Mac 下使用 wordpress 的 Docker 容器,无法连接到 mysql 容器,求解惑

2019-08-01 13:26:30 +08:00
 ideacco

RT,在 MAC 下,有两个容器,一个是 wordpress 的容器,另外一个是 mysql 的容器。 在宿主机( mac 本机)下单独访问都是没问题的。比如可以 127.0.0.1:8080 打开 wordpress 的安装页面,也可以通过 Navicat 连接打 mysql 数据库。

为了让两个容器互相通信,我做了如下事情:

  1. 由于官方不再推荐使用 --link 这种方式连接了,所以我建了一个自定义 docker network 比如 docker network create my-net

  2. 让现有的容器连接到 dokcer 网络中,并且通过docker network inspect my-net查看到,上面两个容器已经在同一个自定义网络里面了

  3. 为了测试自定义网段的容器是否可以相互通信,我另外创建了 busybox1 和 busybox2 两个容器,并连接到自定义网络,在 busybox1 容器中,运行 ping 命令,可以通过 ping busybox2 主机名的方法 ping 通另外一台主机。

  4. 进入到 mysql 主机(mysql)中,设置了 mysql 的 root 登陆权限为 任意地址。

  5. 进入(映射文件夹) wordpress 容器中,并且修改了 wp-config.php 的数据库连接地址:

    define( 'DB_NAME', 'wp_db' );
    
    /** MySQL database username */
    define( 'DB_USER', 'root' );
    
    /** MySQL database password */
    define( 'DB_PASSWORD', 'root' );
    
    /** MySQL hostname */
    define( 'DB_HOST', 'mysql' );
    

试了一通,然而还是连不上,看来只有 V2 大神可以帮忙了。感谢任何意见

2170 次点击
所在节点    程序员
5 条回复
realkenshinji
2019-08-01 13:32:10 +08:00
docker-compose 了解一下?
ideacco
2019-08-01 13:48:42 +08:00
@realkenshinji 感谢推荐,我去了解一下。
zeroDev
2019-08-01 13:54:57 +08:00
ideacco
2019-08-01 14:35:28 +08:00
@zeroDev 感谢,写的好详细要慢慢看了
ideacco
2019-08-01 15:40:49 +08:00
@realkenshinji 非常感谢,果然 docker-compose 是神器,并且很容易上手。已经搞定了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/588171

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX