Pause容器每个Pod中都会存活一个Pause容器,Pod中所有容器会公用
docker run -d —name ghost —net=container:pause —ipc=container:pause —pid=container:pause ghost
- pause 容器将内部的80端口映射到了宿主机的8880端口;
- pause容器在宿主机上设置好了网络namespace后,nginx容器加入到该网络namespace中;
- nginx容器启动的时候指定了–net=container:pause;
- ghost容器启动的时候同样加入到了该网络namespace中;
- 这样三个容器就共享了网络,互相之间就可以使用localhost直接通信,
- –ipc=contianer:pause –pid=container:pause就是三个容器的ipc和pid处于同一个namespace中,init进程为pause;
- PID命名空间:Pod中的不同应用程序可以看到其他应用程序的进程ID;
- 网络命名空间:Pod中的多个容器能够访问同一个IP和端口范围;
- IPC命名空间:Pod中的多个容器能够使用SystemV IPC或POSIX消息队列进行通信;
- UTS命名空间:Pod中的多个容器共享一个主机名;Volumes(共享存储卷):
- Pod中的各个容器可以访问在Pod级别定义的Volumes;
