docker之自定義網路
1,檢視所有的網路
2,網路模式
bridge:橋接,就是在docker上面搭橋(給其他容器)
none:不配置網路
host:主機模式,和宿主機共享網路
container:容器內網路連通(用的少,侷限很大!)
我們自己建立網路也是用橋接!
3,測試:
[root@CentOs ~]# docker network --help
Usage: docker network COMMAND
Manage networks
Commands:
connect Connect a container to a network
create Create a network
disconnect Disconnect a container from a network
inspect Display detailed information on one or more networks
ls List networks
prune Remove all unused networks
rm Remove one or more networks
Run 'docker network COMMAND --help' for more information on a command.
[root@CentOs ~]#
我們原來是這樣啟動的,這裡有一個預設的引數“ --net bridge”
docker run -d -P --name tomcat01 --net bridge tomcat
docker0的特點:
(1),預設
(2),不能訪問域名(通過--link打通連線!)
我們可以自定義一個網路!
4,建立一個網路
先找到幫助文件
開始建立:
[root@CentOs ~]# docker network create --driver bridge --subnet 192.168.0.0/16 --gateway 192.168.0.1 mynet
55f2b7a7e2eb2539fe0f729ffdcfa0f33ad66f76c7d82b2ed7ba9dec146dc489
[root@CentOs ~]#
--subnet:子網掩碼
--gateway:閘道器
檢視自己建立的網路:
[root@CentOs ~]# docker network ls
NETWORK ID NAME DRIVER SCOPE
9b5fbd14678b bridge bridge local
98f0f85bc99b host host local
55f2b7a7e2eb mynet bridge local
6dd89163a6b3 none null local
[root@CentOs ~]#
5,利用自己建立的容器啟動01和02
[root@CentOs ~]# docker run -d -P --name tomcat-net-01 --net mynet tomcat
6bbb9dc26b8490b054ec7a3743663051017bda313922ee02b66e60546afa5826
[root@CentOs ~]# docker run -d -P --name tomcat-net-02 --net mynet tomcat
009bac96ba22473b54f6765a653dad5efd170e1e35ae783dc44a41864dee9cd3
[root@CentOs ~]#
看一下自己的網路
6,為什麼要自定義網路
可以 直接通過域名ping通(不需要--link了!)
我們自定義的網路docker都已經幫我們維護好了對應的關係,推薦平時這樣使用網路
好處:
例如,
Redis -不同的叢集使用不同的網路,保證叢集是健康和安全的!
MySQL -不同的叢集使用不同的網路,保證叢集是健康和安全的!
如果想要容器自定義的網路打通,這就是網路連通!