Doker容器之间连接

第一个应用容器

$ sudo docker run --name=mysql_client1 --link=mysql_server:db -t -i kongxx/mysql_client /usr/bin/mysql -h db -u root -pletmein  

第二个应用容器

$ sudo docker run --name=mysql_client2 --link=mysql_server:db -t -i kongxx/mysql_client /usr/bin/mysql -h db -u root -pletmein  

注意:这里需要特别注意一下“–link=mysql_server:db”,这个参数就是告诉Docker容器需要使用“mysql_server”容器,并将其别名命名为db,这样在这两个容器里就可以使用“db”来作为提供mysql数据库服务的机器名。所以在最后启动参数里我们使用的是“/usr/bin/mysql -h db -u root -pletmein”来连接mysql数据库的。

运行完上面两个命令,我们就会在创建了两个mysql的client的容器,此时我们可以使用下面命令来查看状态

$sudo docker ps  

CONTAINER ID        IMAGE                        COMMAND                CREATED             STATUS              PORTS                     NAMES  

ac0c76c627c0        kongxx/mysql_client:latest   /usr/bin/mysql -h db   10 seconds ago      Up 9 seconds                                  mysql_client2  

763c4825722d        kongxx/mysql_client:latest   /usr/bin/mysql -h db   41 minutes ago      Up 40 minutes                                 mysql_client  

32f7839f7e9d        kongxx/mysql_server:latest   /usr/bin/mysqld_safe   About an hour ago   Up About an hour    0.0.0.0:49153->3306/tcp   mysql_client1/db,mysql_client2/db,mysql_server  

这里注意一下最后一行,也就是mysql_server容器的“NAMES”列的内容“mysql_client/db,mysql_client2/db,mysql_server”,这就说明mysql_client1和mysql_client2都和db建立的连接。

原文地址:https://www.cnblogs.com/boonya/p/7403318.html