K8s实战-init容器

news2024/11/26 8:12:01

概念:

初始化容器的概念 比如一个容器A依赖其他容器,可以为A设置多个 依赖容易A1,A2,A3

A1,A2,A3要按照顺序启动,A1没有启动启动起来的 话,A2,A3是不会启动的,直到所有的静态容器全 部启动完毕,主容器A才会启动。

一般用于A容器运行之前,先做一些准备工作。
如果初始化容器失败,则会一直重启,pod不会创建


实战:

yaml1

apiVersion: v1
kind: Pod
metadata:
  name: init-pod
  labels:
    app: init-pod
spec:
  containers:
  - name: init-pod
    image: busybox
    command: ['sh', '-c', 'echo The app is running! && sleep 3600']
    volumeMounts:
    - mountPath: /xx
      name: workdir
  initContainers:
  - name: init-mkdir
    image: busybox
    command: ['sh', '-c', "touch /work-dir/1112233"]
    volumeMounts:
    - mountPath: /work-dir
      name: workdir
  volumes:
  - name: workdir
    emptyDir: {}

容器成功启动
在这里插入图片描述


yaml2

apiVersion: v1
kind: Pod
metadata:
  name: init-pod
  labels:
    app: init-pod
spec:
  containers:
  - name: init-pod
    image: busybox
    command: ['sh', '-c', 'echo The app is running! && sleep 3600']
    volumeMounts:
    - mountPath: /xx
      name: workdir
  initContainers:
  - name: init-mkdir
    image: busybox
    command: ['sh', '-c', "touch /work-dir/1112233 && sleep 3600"]
    volumeMounts:
    - mountPath: /work-dir
      name: workdir
  volumes:
  - name: workdir
    emptyDir: {}

在初始化容器里面加了sleep后,容器无法正常启动,一直是初始化状态
在这里插入图片描述

yaml3

apiVersion: v1
kind: Pod
metadata:
  name: init-pod
  labels:
    app: init-pod
spec:
  containers:
  - name: init-pod
    image: busybox
    command: ['sh', '-c', 'echo The app is running! && sleep 3600']
    volumeMounts:
    - mountPath: /xx
      name: workdir
  initContainers:
  - name: init-mkdir
    image: busybox
    command: ['sh', '-c', "touch1 /work-dir/1112233 && sleep 3600"]
    volumeMounts:
    - mountPath: /work-dir
      name: workdir
  volumes:
  - name: workdir
    emptyDir: {}

这里把command里面的touch故意改成touch1,这样会报错,测试如下所示:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1342552.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于Java车间工时管理系统(源码+部署文档)

博主介绍: ✌至今服务客户已经1000、专注于Java技术领域、项目定制、技术答疑、开发工具、毕业项目实战 ✌ 🍅 文末获取源码联系 🍅 👇🏻 精彩专栏 推荐订阅 👇🏻 不然下次找不到 Java项目精品实…

[stm32f103]DMA

简介 • DMA ( Direct Memory Access )直接存储器存取 • DMA 可以提供外设和存储器或者存储器和存储器之间的高速数据传输,无须 CPU 干预,节省了 CPU 的资源 • 12 个独立可配置的通道: DMA1 ( 7 个通道…

Python爬取今日头条热门文章

前言 今日头条文章收益是没有任何门槛,只要是你发布文章,每篇文章的阅读量超过1000就能有收益,阅读量越多收益越高。于是乎我就有了个大胆的想法。何不利用Python爬虫,爬取热门文章,然后完成自动化发布文章呢&#xf…

独立容器 Rancher Server 证书过期解决

问题 Rancher无法登录 容器报错X509:certificate has expired or is not ye valid 在某天需要发布新版本的时候,发现rancher无法登录,于是到服务器上查看rancher日志,发现以下内容: docker logs -f rancher --since10…

Large-Precision Sign using PBS

参考文献: [CLOT21] Chillotti I, Ligier D, Orfila J B, et al. Improved programmable bootstrapping with larger precision and efficient arithmetic circuits for TFHE[C]//Advances in Cryptology–ASIACRYPT 2021: 27th International Conference on the T…

【强化学习】基于蒙特卡洛MC与时序差分TD的简易21点游戏应用

1. 本文将强化学习方法(MC、Sarsa、Q learning)应用于“S21点的简单纸牌游戏”。 类似于Sutton和Barto的21点游戏示例,但请注意,纸牌游戏的规则是不同且非标准的。 2. 为方便描述,过程使用代码截图,文末附链…

JavaSE基础50题:25. 查找数组中指定元素(顺序查找)

概述 给定一个数组,再给定一个元素,找出该元素在数组中的位置。 for循环遍历 【概述】 一个一个找,比较慢。 想要快一点的方法,可以使用二分查找,在后续《JavaSE基础50题》专栏中27题中详细讲解。 【代码】 public …

MySql篇——MySql使用常见问题及解决办法

这里汇总MySql使用常见问题及解决办法,会持续更新。 问题1.ERROR 1819 (HY000): Your password does not satisfy the current policy requirements。 含义:你设置的密码不符合当前的密码等级。 可使用 SHOW VARIABLES LIKE validate_password%; 查看…

C#中的Attribute详解(上)

C#中的Attribute详解(上) 一、Attribute是什么二、Attribute的作用三、Attribute与注释的区别四、系统Attribute范例1、如果不使用Attribute,为了区分这四类静态方法,我们只能通过注释来说明,但这样做会给系统带来很多…

计算机图形学光线追踪大作业C++基于Optix为框架实现的光线追踪算法合集,含直射光阴影效果、漫反射阴影效果、镜面反射效果等示例

MineRay 使用Optix为框架实现的光线追踪算法。 包含4个示例,直射光阴影效果、漫反射阴影效果、镜面反射效果、折射效果 环境需求 本项目在Windows 10中测试,以下环境为Windows中的环境 CUDA 10.1 OptiX 7 SDK cmake 编译方式 使用cmake编译 打开Mi…

分布式、CAP 和 BASE 理论

在计算机科学领域,分布式系统是一门极具挑战性的研究方向,也是互联网应用中必不可少的优化实践,而 CAP 理论和 BASE 理论则是分布式系统中的两个关键的概念。 什么是分布式系统 首先,让我们来谈谈分布式系统。你可以将分布式系统…

C++进阶--继承和多态常见题目

继承和多态常见题目 概念考查问答题 概念考查 下面哪种面向对象的方法可以让你变得富有( A) A: 继承   B: 封装   C: 多态   D: 抽象 这道题说哪种面向对象的方法可以让我们更富有,也就是东西更多,那么一定是继承无疑了,因为继承可以让…

ArcGIS高程点生成等高线

基本步骤:数据清洗→创建TIN→TIN转栅格→等值线→平滑线。 1.(重要)数据清理:删除高程点中的高程异常值数据。 2.创建TIN:系统工具→3D Analyst Tools→数据管理→TIN→创建TIN(可直接搜索工具TIN)。 单击…

移动机器人规划、控制算法初识

规划与控制PNC(PlanningandControl) 1 路径规划算法: 移动机器人路径规划算法总结_机器人运动轨迹算法-CSDN博客 2 控制算法: 机器人控制算法综述_机器人控制技术综述-CSDN博客 机器人控制算法简要概述_智能控制算法-CSDN博客 学习资源: …

VSCode 未装插件

EditorConfig for VS Code:自定义代码规范,按照自己指定的规则而不是编辑器默认的格式化。 ES7 React/Redux/React-Native snippets:款苏插入React代码片段。 Material Icon Theme:文件图标主题。 Prettier - Code formatte…

自然语言处理(第16课 机器翻译4、5/5)

一、学习目标 1.学习各种粒度的系统融合方法 2.学习两类译文评估标准 3.学习语音翻译和文本翻译的不同 4.学习语音翻译实现方法 二、系统融合 以一个最简单的例子来说明系统融合,就是相当于用多个翻译引擎得到不同的翻译结果,然后选择其中最好的作为…

在VMware安装CentOS 7:详细教程

安装准备工作 本地虚拟机:我这里使用的是VMware Workstation 17 Pro centos7系统ISO镜像:我这里使用的是CentOS-7-x86_64-DVD-2009.iso,具体的下载地址是在阿里云官方镜像站:centos-7.9.2009-isos-x86_64安装包下载_开源镜像站-阿…

k8s的资源管理

命令行: kubectl命令行工具优点: 90%以上的场景都可以满足 对资源的增,删,查比较方便,对改不是很友好缺点:命令比较冗长,复杂难记 声明方式:k8s当中的yaml文件实现资源管理----声明式GUI:图形化工具的管理。 查看k8s的…

AIGC时代下,结合ChatGPT谈谈儿童教育

引言 都2024年了,谈到儿童教育,各位有什么新奇的想法嘛 我觉得第一要务,要注重习惯养成,我觉得聊习惯养成这件事情范围有点太大了,我想把习惯归纳于底层逻辑,我们大家都知道,在中国式教育下&a…

SAP缓存 表缓存( Table Buffering)

本文主要介绍SAP中的表缓存在查询数据,更新数据时的工作情况以及对应概念。 SAP表缓存的工作 查询数据 更新数据 删除数据 表缓存的概念 表缓存技术设置属性 不允许缓冲: 允许缓冲,但已关闭: 缓冲已激活: 已…