K8S学习之基础十:初始化容器和主容器

init容器和主容器

init容器和主容器的区别

  1. 初始化容器不支持 Readinessprobe,因为他们必须在pod就绪之前运行完成

  2. 每个init容器必须运行成功,下一个才能够运行

    定义两个初始化容器,完成后再运行主容器

    vi pod-init.yaml
    apiVersion: v1
    kind: Pod
    metadata:
    name: myapp-pod
    labels:
    app: myapp
    spec:
    initContainers:

    • name: init-myservice
      image: 172.16.80.140/busybox/busybox:1.28
      imagePullPolicy: IfNotPresent
      command: ['sh', '-c', "sleep 5"]
    • name: init-mydb
      image: 172.16.80.140/busybox/busybox:1.28
      imagePullPolicy: IfNotPresent
      command: ['sh', '-c', "sleep 5"]
      containers:
    • name: myapp-container
      image: 172.16.80.140/busybox/busybox:1.28
      command: ['sh', '-c', 'echo The app is running! && sleep 3600']
复制代码
# 获取百度首页,挂载到init容器中,同时挂载到主容器nginx中
vi pod-init-2.yaml
apiVersion: v1
kind: Pod
metadata:
  name: initnginx
spec:
  initContainers:
  - name: install
    image: 172.16.80.140/busybox/busybox:1.28
    imagePullPolicy: IfNotPresent
    command:
    - wget
    - "-O"
    - "/work-dir/index.html"
    - "https://www.baidu.com"
    volumeMounts:
    - name: workdir
      mountPath: /work-dir
  containers:
  - name: nginx
    image: 172.16.80.140/nginx/nginx:1.26
    imagePullPolicy: IfNotPresent
    ports:
    - containerPort: 80
    volumeMounts:
    - name: workdir
      mountPath: /usr/share/nginx/html
  dnsPolicy: Default
  volumes:
  - name: workdir
    emptyDir: {}
相关推荐
xbzb3 小时前
从零容器化部署 ECShop:Harbor 私有仓库 + 自定义 PHP 镜像 + LNMP 三容器
容器·php·harbor·镜像·仓库·ecshop
那明眸似水3 小时前
云原生项目三:Docker秒级启动NextCloud个人网盘存储办公系统
linux·运维·docker·云原生·容器
腾飞开源3 小时前
03_Kubernetes 核心概念拆解:从 Spec/Status 收敛到工作负载控制器的设计逻辑
云原生·容器·kubernetes
知已难寻15 小时前
Docker 入门:容器技术与 Docker 基础
java·运维·服务器·docker·云原生·容器
xbzb20 小时前
镜像到底存在哪:/var/lib/docker 的四级映射与 daemon.json 配置
docker·容器·json·镜像·daemon.json·四级
阿里云云原生20 小时前
生产更可信,订阅更耐用丨Higress 社区进展报告
云原生
阿里云云原生21 小时前
如何用 STAROps Elasticsearch 智能助手看穿“搜索变慢”
云原生
kuroomi1 天前
Git入门
git·kubernetes
雾时之林1 天前
国内Docker 镜像加速器配置
云原生·eureka
方便面不加香菜1 天前
Docker Volume -- 管理卷Volume详解
运维·docker·容器