k8s-ocp-yaml
  • 简介
  • 微软云 Azure
    • 2022-10-18-Azure Portal创建k8s集群
    • 2022-10-30-Azure容器镜像仓库
    • 2023-03-08-基于Policy实现tag批量分配与继承
    • 2023-02-24-Terraform 安装与简单demo
    • 2023-03-10-Terraform 创建 private AKS
    • 2023-03-22-Terraform 离线环境使用
    • 2023-03-24-Terraform 踩坑记1-InternalOperationError
  • yaml文件书写注意项
    • 2018-05-29-yaml文件来源
    • 2018-05-29-多资源对象写法
  • kubernetes docs
    • 2020-04-24-kubectl-debug插件及openshift debug模式
    • 2020-04-23-k8s 利用subpathexpr处理日志落盘
    • 2020-04-14-metrics-server 轻量级监控
    • 2020-03-31-helm3 全新版本带来了什么
    • 2019-07-27-k8s openshift troubleshooting故障诊断
    • 2020-02-17-k8s CIS benchmark 安全基准测试
    • 2019-10-14-kubernetes 1.16 单机版在线安装
    • 2019-04-19-kubernetes 1.14 离线安装
    • 2018-11-20-kubernetes dashboard 免密登陆
    • 2018-04-07-kubernetes1.10 install offline
    • 2018-04-02-kubernetes1.9 install online
    • 2018-04-04-kubernetes1.9 HA install online
    • 2018-05-02-helm2 install
  • openshift docs
    • 2021-05-17-podman添加开机自启
    • 2020-06-23-openshift4.4 在线安装(包含allinone)静态ip
    • 2020-02-25-openshift 4.3 离线安装--DHCP方式
    • 2020-03-18-openshift4 operatorhub 离线部署
    • 2019-07-02-openshift origin 3.11 在线安装
    • 2019-09-24-openshift 对接AD域作为用户系统
    • 2019-11-13-openshift jenkins slave pod 自定义模板
  • 应用(deployment,rc,rs,volume,readiness,liveness)
    • 2018-05-31-deployment,rc,rs控制器
    • 2018-05-31-volume 容器存储
    • 2018-07-05-liveness readiness 健康检查
  • Openshift独有resource
    • 2019-08-08-template模板解读
  • docker相关文档
    • 2017-08-10-dockerfile 书写注意
    • 2017-08-10-dockerfile examples
    • 2017-07-19-dockerfile 命令
  • 容器云监控prometheus
    • 2019-10-22-安装部署与监控ingress-controller
    • 2020-05-30-组件功能介绍与监控数据来源
  • 中间件
    • 2020-03-30-kafka的安装与开启ACL权限控制
  • others
    • 2020-06-06-树莓派安装docker环境
  • Last part without title
Powered by GitBook
On this page
  1. openshift docs

2021-05-17-podman添加开机自启

podman因为不像docker那样有daemon进程,启动容器不再支持 restart 参数,对于系统重启后,需要自启的容器需要手动做一些配置,如通过 systemd 来管理。

podman 提供了命令生成 systemd 配置文件。前提是容器已经创建。

# 先看下容器名称,最后一个参数  
 [root@bastion ~]# podman ps
CONTAINER ID  IMAGE                           COMMAND               CREATED       STATUS             PORTS                   NAMES
396f8e6b7bf3  docker.io/library/registry:2.6  /etc/docker/regis...  4 months ago  Up 11 minutes ago  0.0.0.0:5000->5000/tcp  mirror-registry

# systemd 后面跟容器名称  

[root@bastion ~]# podman generate systemd mirror-registry 
# container-396f8e6b7bf3bb2f0b92f0f0073da54c68b17905fd4456156e9cbcae035bba38.service
# autogenerated by Podman 1.6.4
# Mon May 17 16:43:07 CST 2021

[Unit]
Description=Podman container-396f8e6b7bf3bb2f0b92f0f0073da54c68b17905fd4456156e9cbcae035bba38.service
Documentation=man:podman-generate-systemd(1)

[Service]
Restart=on-failure
ExecStart=/usr/bin/podman start 396f8e6b7bf3bb2f0b92f0f0073da54c68b17905fd4456156e9cbcae035bba38
ExecStop=/usr/bin/podman stop -t 10 396f8e6b7bf3bb2f0b92f0f0073da54c68b17905fd4456156e9cbcae035bba38
KillMode=none
Type=forking
PIDFile=/var/run/containers/storage/overlay-containers/396f8e6b7bf3bb2f0b92f0f0073da54c68b17905fd4456156e9cbcae035bba38/userdata/conmon.pid

[Install]
WantedBy=multi-user.target

生成配置文件,并移到目录 /usr/lib/systemd/system/ 并设置开机自启

podman generate systemd mirror-registry > mirror-registry.service
mv mirror-registry.service /usr/lib/systemd/system/

systemctl enable mirror-registry

测试一下,要确保此容器停止不影响业务。

第一次systemctl stop 没有成功,可能和当前还没有 PIDFile 有关,手动 stop 一下。 然后再测试 start, stop ,系统重启

[root@bastion ~]# systemctl stop mirror-registry
[root@bastion ~]# podman stop -t 10 396f8e6b7bf3bb2f0b92f0f0073da54c68b17905fd4456156e9cbcae035bba38

[root@bastion ~]# podman ps
CONTAINER ID  IMAGE  COMMAND  CREATED  STATUS  PORTS  NAMES

[root@bastion ~]# systemctl start mirror-registry

[root@bastion ~]# podman ps
CONTAINER ID  IMAGE                           COMMAND               CREATED       STATUS            PORTS                   NAMES
396f8e6b7bf3  docker.io/library/registry:2.6  /etc/docker/regis...  4 months ago  Up 2 seconds ago  0.0.0.0:5000->5000/tcp  mirror-registry

[root@bastion ~]# systemctl stop  mirror-registry
[root@bastion ~]# podman ps
CONTAINER ID  IMAGE  COMMAND  CREATED  STATUS  PORTS  NAMES

# 可以通过 systemctl 控制启动与停止

重启系统测试下能不能自启动

[root@bastion ~]# reboot

[root@bastion ~]# podman ps
CONTAINER ID  IMAGE                           COMMAND               CREATED       STATUS             PORTS                   NAMES
396f8e6b7bf3  docker.io/library/registry:2.6  /etc/docker/regis...  4 months ago  Up 10 minutes ago  0.0.0.0:5000->5000/tcp  mirror-registry


[root@bastion ~]# systemctl status mirror-registry.service 
● mirror-registry.service - Podman container-396f8e6b7bf3bb2f0b92f0f0073da54c68b17905fd4456156e9cbcae035bba38.service
   Loaded: loaded (/usr/lib/systemd/system/mirror-registry.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2021-05-17 17:03:47 CST; 10min ago
     Docs: man:podman-generate-systemd(1)
  Process: 3337 ExecStart=/usr/bin/podman start 396f8e6b7bf3bb2f0b92f0f0073da54c68b17905fd4456156e9cbcae035bba38 (code=exited, status=0/SUCCESS)
 Main PID: 5847 (conmon)
   CGroup: /system.slice/mirror-registry.service
           ‣ 5847 /usr/bin/conmon --api-version 1 -s -c 396f8e6b7bf3bb2f0b92f0f0073da54c68b17905fd4456156e9cbcae035bba38 -u 396f8e6b7bf3bb2f0b92f0f0073da54c68b17905fd4...

May 16 20:58:37 bastion systemd[1]: Starting Podman container-396f8e6b7bf3bb2f0b92f0f0073da54c68b17905fd4456156e9cbcae035bba38.service...
May 17 17:03:46 bastion podman[3337]: 2021-05-17 17:03:46.645432077 +0800 CST m=+5.691401362 system refresh
May 17 17:03:47 bastion podman[3337]: 2021-05-17 17:03:47.60543448 +0800 CST m=+6.651403749 container init 396f8e6b7bf3bb2f0b92f0f0073da54c68b17905fd4456156...r-registry)
May 17 17:03:47 bastion podman[3337]: 2021-05-17 17:03:47.674173834 +0800 CST m=+6.720143108 container start 396f8e6b7bf3bb2f0b92f0f0073da54c68b17905fd44561...r-registry)
May 17 17:03:47 bastion podman[3337]: 396f8e6b7bf3bb2f0b92f0f0073da54c68b17905fd4456156e9cbcae035bba38
May 17 17:03:47 bastion systemd[1]: Started Podman container-396f8e6b7bf3bb2f0b92f0f0073da54c68b17905fd4456156e9cbcae035bba38.service.
Hint: Some lines were ellipsized, use -l to show in full.
Previousopenshift docsNext2020-06-23-openshift4.4 在线安装(包含allinone)静态ip

Last updated 3 years ago