我创建了一个小的docker-compose.yml,它曾经像魅力一样工作,可以部署小型wordpress实例.它看起来像这样:
wordpress:
image: wordpress:latest
links:
- MysqL
ports:
- "1234:80"
environment:
wordpress_DB_USER: wordpress
wordpress_DB_NAME: wordpress
wordpress_DB_PASSWORD: "password"
wordpress_DB_HOST: mariadb
MysqL_PORT_3306_TCP: 3306
volumes:
- /srv/wordpress/:/var/www/html/
MysqL:
image: mariadb:latest
mem_limit: 256m
container_name: mariadb
environment:
MysqL_ROOT_PASSWORD: "password"
MysqL_DATABASE: wordpress
MysqL_USER: wordpress
MysqL_PASSWORD: "password"
volumes:
- /srv/mariadb:/var/lib/MysqL
但是当我现在开始它时(可能是因为docker更新到Docker版本1.9.1,构建a34a1d5),它失败了
wordpress_1 | Warning: MysqLi::MysqLi(): (HY000/2002): Connection refused in - on line 10
wordpress_1 |
wordpress_1 | MysqL Connection Error: (2002) Connection refused
当我使用wordpress_1的/ etc / hosts时,有MysqL的条目:
172.17.0.10 MysqL 12a564fdbc56 mariadb
我能够ping MariaDB服务器.
当我使用docker-compose时,会安装wordpress,并在几次重启后打开MariaDB容器:
Version: '10.0.22-MariaDB-1~jessie' socket: '/var/run/MysqLd/MysqLd.sock' port: 3306 mariadb.org binary distribution
哪个schould表明它正在运行,不是吗?
如何让wordpress能够连接到MariaDB容器?
最佳答案
此行为的原因可能与最近的内核和docker更新有关.我在其他docker-compose设置中认识到了其他一些连接问题.因此,我重新启动了服务器(不仅仅是docker服务),从那时起就没有任何类似的问题.