[英]Running MySQL in a Docker container
因此,我的最终目标是运行MySQL Docker容器(例如来自公共注册表的tutum / mysql),然后将Gitlab Docker容器(比如sameersbn / gitlab)链接到两个容器使用持久存储的容器。
但是,我被困在MySQL部分。 每次我尝试运行一个预制的MySQL Docker容器(mysql,tutum / mysql和sameersbn / mysql),如下所述,我得到以下输出。
脚步
这只是获取下面的错误消息的一种方法。
输出:
root @ 1bbeb34f3491:/#mysqld
140730 4:49:04 [警告]不推荐使用唯一选项前缀key_buffer而不是key_buffer_size,将在以后的版本中删除。 请改用全名。
140730 4:49:04 [警告]不推荐使用唯一选项前缀myisam-recover而不是myisam-recover-options,将在以后的版本中删除。 请改用全名。
140730 4:49:04 [注意]插件'FEDERATED'被禁用。
mysqld:表'mysql.plugin'不存在
140730 4:49:04 [ERROR]无法打开mysql.plugin表。 请运行mysql_upgrade来创建它。
140730 4:49:04 InnoDB:InnoDB内存堆被禁用
140730 4:49:04 InnoDB:Mutexes和rw_locks使用GCC原子内置
140730 4:49:04 InnoDB:压缩表使用zlib 1.2.8
140730 4:49:04 InnoDB:使用Linux原生AIO
140730 4:49:04 InnoDB:初始化缓冲池,大小= 128.0M
140730 4:49:04 InnoDB:完成缓冲池的初始化
140730 4:49:04 InnoDB:最高支持的文件格式是Barracuda。
140730 4:49:04 InnoDB:等待后台线程开始
140730 4:49:05 InnoDB:5.5.37开始; 日志序列号1595675
140730 4:49:05 [注意]服务器主机名(bind-address):'0.0.0.0'; 港口:3306
140730 4:49:05 [注意] - '0.0.0.0'解析为'0.0.0.0';
140730 4:49:05 [注意]在IP上创建的服务器套接字:'0.0.0.0'。
140730 4:49:05 [错误]无法启动服务器:在unix套接字上绑定:权限被拒绝
140730 4:49:05 [错误]你是否已在socket上运行另一个mysqld服务器:/var/run/mysqld/mysqld.sock?
140730 4:49:05 [错误]中止
140730 4:49:05 InnoDB:开始关机... 140730 4:49:06 InnoDB:关机完成; 日志序列号1595675 140730 4:49:06 [注意] mysqld:关闭完成
解决错误
root @ 1bbeb34f3491:/#mysql_upgrade
寻找'mysql'为:mysql
寻找'mysqlcheck'为:mysqlcheck
致命错误:升级失败
无论我尝试哪个MySQL容器,最终当我启动MySQL时,出现了相同的错误消息。 这几乎可以肯定意味着我的设置出了问题让我感到困惑,因为我认为没有暴露端口或持久存储的Docker容器会与系统中的Docker隔离?
我还尝试使用-d标志运行MySQL容器,然后运行链接到它的新的ubuntu 14.04容器(docker.io run -it -link mysql:mysql ubuntu:14.04 bash)。 在Ubuntu容器上,我通过apt-get安装了mysql-client,并尝试连接到MYSQL_PORT_3306_TCP_ADDR中的ip地址上的MySQL容器,但这也不起作用。
同样问题可能是我不明白Docker是如何工作的。 如果是这种情况,有人可以创建一组步骤,使用Docker索引上的一个MySQL容器,然后将容器链接到可以连接的容器。 这也有助于查看我的Docker安装是否有问题(或导致此问题的其他一些未知问题)。
我的主机系统运行的是Ubuntu 14.04,Docker是通过apt-get安装的,版本是0.9.1。
我不太清楚在这个解释中应该放什么,因为这个问题对我来说似乎很奇怪。 如果有什么我错过了请问,我会为你添加。
谢谢JamesStewy
这适用于我: docker run -d -p 3306:3306 -e MYSQL_PASS="mypass" tutum/mysql
无需从bash运行脚本,不需要任何聪明的东西。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.