我正在尝试运行两个单独的mysql容器。

但是,我只能从主机(使用端口20001)连接到client_mysql容器。 server_mysql容器正在侦听端口20002,但拒绝连接。

我需要更改哪些设置才能同时连接到两个mysql容器?



我的docker-compose-dev.yml

version: '3'
services:

  client_mysql:
    image: mysql:5.7
    container_name: client_mysql
    ports:
      - 20001:3306
    volumes:
      - ./_data/client_mysql:/var/lib/mysql
    environment:
      - MYSQL_ALLOW_EMPTY_PASSWORD=1
      - MYSQL_DATABASE=client_database

  server_mysql:
    image: mysql:5.7
    container_name: server_mysql
    ports:
      - 20002:3306
    volumes:
      - ./_data/server_mysql:/var/lib/mysql
    environment:
      - MYSQL_ALLOW_EMPTY_PASSWORD=1
      - MYSQL_DATABASE=server_database


lsof -i -P的输出(已过滤的docker mysql端口):

89:com.docke 93244 petrhejda   24u  IPv6 0xd067260469a7469b      0t0  TCP *:20002 (LISTEN)
90:com.docke 93244 petrhejda   26u  IPv6 0xd067260469a73b1b      0t0  TCP *:20001 (LISTEN)

最佳答案

解决了:

我的防火墙阻止了端口20002。

当然,检查防火墙是我在发布问题后马上想到的第一个想法。 :)

关于mysql - Docker:多个mysql容器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59126071/

10-16 18:30