使用Docker Compose连接到另一个容器中运行的mysql

时间:2016-05-26 20:29:51

标签: java mysql docker docker-compose dockerfile

我是docker和docker-compose的新手。

我在docker容器中运行mysql,初始化了两个数据库。

我可以使用以下方式连接到它:

mysql --port=3306 -h192.0.0.1 -uroot -ppassword

当我跑步时:

docker ps

04bc1d308484        container-mysql   "docker-entrypoint.sh"   2 hours ago         Up 2 hours          3306/tcp            container-mysql

我的查询是现在我想使用

从另一个容器连接到它
docker-compose up.

another-image:
  image: another-image
  command: /opt/start.sh
  ports:
    - "8080:8080"
  environment:
    DB_URL: container-mysql
    DB_USER: root
    DB_PASSWORD: password
  external_links:
    - container-mysql

有人可以指导我找不到什么,还有什么需要。

我的container-mysql有两个数据库模式。

实施例: firstdb seconddb

1 个答案:

答案 0 :(得分:0)

好的,找到了答案。如果其他人遇到同样的问题,请执行

docker network ls

此命令列出所有docker网络。

|网络ID | NAME | DRIVER |范围|
| ------------- | --------------- | -------- | -------- |
| c24bee6b5b8e | network-mysql |桥|当地的|

因此,演示此文件的撰写文件可能如下所示:

another-image:
  image: another-image
  command: /opt/start.sh
  ports:
    - "8080:8080"
  environment:
    DB_URL: container-mysql
    DB_USER: root
    DB_PASSWORD: password
  external_links:
    - container-mysql
  network_mode: network-mysql