【Linux】【Services】【Docker】網絡
容器的網絡模型:
closed container:
僅有一個接口:loopback
不參與網絡通信,僅適用於無須網絡通信的應用場景,例如備份、程序調試等;
--net none
bridged container:
此類容器都有兩個接口:
loopback
以太網接口:橋接至docker daemon設定使用的橋,默認為docker0;
--net bridge
-h, --hostname HOSTNAME
--dns DNS_SERVER_IP
--add-host "HOSTNAME:IP"
docker0 NAT橋模型上的容器發布給外部網絡訪問:
-p <containerPort>
僅給出了容器端口,表示將指定的容器端口映射至主機上的某隨機端口;
-p <hostPort>:<containerPort>
將主機的<hostPort>映射為容器的<containerPort>
-p <hostIP>::<containerPort>
將主機的<hostIP>上的某隨機端口映射為容器的<containerPort>
-p <hostIP>:<hostPort>:<containerPort>
將主機的<hostIP>上的端口<hostPort>映射為容器的<containerPort>
-P, --publish-all
發布所有的端口,跟--expose選項一起指明要暴露出外部的端口;
如果不想啟動容器時使用默認的docker0橋接口,需要在運行docker daemon命令時使用
-b選項:指明要使用橋;
聯盟式容器:
啟動一個容器時,讓其使用某個已經存在的容器的網絡名稱空間;
--net container:CONTAINER_NAME
開放式容器:
容器使用Host的網絡名稱空間;
--net host
容器間的依賴關系:
鏈接機制:linking
--link
容器的資源限制:
run命令的選項:
-m
--cpuset-cpus
--shm-size
【Linux】【Services】【Docker】網絡