因此,我的最终目标是运行一个MySQL Docker容器(例如,在公共注册表中运行一个tutum/mysql ),然后将一个Gitlab容器(例如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-恢复而不是myisam-恢复选项被废弃,并将在未来的版本中删除。请用全名代替。 140730 4:49:04注释插件“联邦”被禁用。 mysqld:表'mysql.plugin‘不存在 140730 4:49:04错误无法打开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本机 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注服务器主机名(绑定地址):'0.0.0.0';端口: 3306 140730 4:49:05注- '0.0.0.0‘解析为'0.0.0.0'; 140730 4:49:05在IP上创建的Note套接字:'0.0.0.0‘。 140730 4:49:05错误无法启动服务器:在unix上绑定:权限被拒绝 140730 4:49:05错误您是否已经在套接字上运行另一个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
寻址错误
根@1bbeb34f3491:/# mysql_upgrade 寻找“mysql”as: mysql 寻找“mysqlcheck”as: mysqlcheck 致命错误:升级失败
无论我尝试哪个MySQL容器,最终当我启动MySQL时,都会出现相同的错误消息。这几乎肯定意味着我的设置有问题,这使我感到困惑,因为我认为没有公开端口或持久存储的Docker容器将与安装在系统上的Docker隔离?
我还尝试运行一个带有MySQL标志的-d容器,然后运行一个新的ubuntu14.04容器(docker.io run -it -link mysql:mysql ubuntu :14.04bash)。在Ubuntu容器上,我通过apt安装了MySQL,并试图连接到MySQL容器在MYSQL_PORT_3306_TCP_ADDR的ip地址上,但这也不起作用。
同样,问题可能是我不明白Docker是如何工作的。如果是这样的话,是否有人可以创建一组步骤,使用Docker索引上的MySQL容器之一,然后将容器链接到可以连接的容器。这也将有助于了解我的Docker安装是否有问题(或导致此问题的其他未知问题)。
我的主机系统正在运行Ubuntu14.04,Docker是通过apt安装的,版本为0.9.1。
我不太清楚在这个解释中该怎么解释,因为这个问题在我看来很奇怪。如果我漏掉了什么,请问一下,我会帮你补充的。
谢谢,JamesStewy
发布于 2016-02-05 22:06:58
这对我有用:docker run -d -p 3306:3306 -e MYSQL_PASS="mypass" tutum/mysql
不需要从bash运行脚本,也不需要任何聪明的东西。
https://stackoverflow.com/questions/25069860
复制相似问题