docker學習(二)——學習network命令,使容器間通信

在學習docker的時候,比方說我起了一個mysql的容器,再起一個需要使用mysql的容器,這個時候會爲容器間通信而發愁

找了下資料,首先,docker的容器默認是在同一個網內,可以在進入容器後,用命令 cat /etc/hosts 來查看ip

也可以用命令來查看所有容器的ip

docker inspect --format='{{.Name}} - {{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $(docker ps -aq)

 

如果想自定義網絡的話,可以使用network命令的(推薦)

1.創建一個新的網絡

docker network create mynet

2.查看網絡信息

docker network ls

3.創建容器時指定網絡及別名

創建mysql容器:docker run -p:33306:3306 --network mynet --network-alias myMysql3  --name myMysql3 -v /Users/qiunan/docker_v/mysql/conf/:/etc/mysql/conf.d -v /Users/qiunan/docker_v/mysql/data/:/var/lib/mysql -v /Users/qiunan/docker_v/mysql/logs/:/logs/ -e MYSQL_ROOT_PASSWORD=123456 -d  mysql:5.7

這裏通過--network 指定使用mynet的網絡,-network-alias指定這個mysql的網絡別名爲myMysql3

創建centos容器docker run -ti --network mynet --network-alias myCentos --name myCentos7 centos:7 /bin/bash

4.測試訪問

在centos裏ping myMysql3

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章