1. infra容器和用户容器的关系
1.1 pause 是k8s的基础设施的一部分,pod中其他容器通过pause容器跟其他pod进行通信。
1.2 pod中其他容器跟pause容器共享命名空间
1.3 她是pod中第一个被启动的容器
1.4 pod中的容器可以声明共享一个volume
2. 利用infra容器特性(共享一个volume)的案例
2.1 init 容器加 web 容器
template:
metadata:
labels:
app: xxxwordpress
tier: xxxfrontend
spec:
initContainers:
- image: debian
name: co-container
env:
- name: DBSVC_KEY
valueFrom:
configMapKeyRef:
name: my-config01
key: dbsvc
- name: ONECLOUDURL_KEY
valueFrom:
configMapKeyRef:
name: my-config01
key: twocloudurl_key
volumeMounts:
- name: my-tmp-file
mountPath: /pod-data
command: ["/bin/sh"]
args: ["-c","/pod-data/changedata.sh"]
containers:
- image: harbor.twopower.com/pub/guanwang:1226
name: xxxwordpress
ports:
- containerPort: 80
name: xxxwordpress
volumeMounts:
- name: my-tmp-file
mountPath: /var/www/app
volumes:
- name: my-tmp-file
hostPath:
path: /etc/html