用systemd设置podman 生成的容器开机自启动

2023-05-16

实际上已经在之前的博客里面写过了,不过这一部分包含其中。

为便于寻找和配置使用,单独编写了此标题,并通过连接进行指向

CentOS8.2中的Podman使用初探-以搭建LNMP-seafile-onlyoffice为情景:https://blog.csdn.net/lggirls/article/details/104047366

6.编辑systemd配置文档,令各个容器能实现开机启动

由于podman不是守护进程,所以开机后该服务不会自动启动,所以,不能像docker那样,随着docker的启动,控制各个容器达成的服务也自动开启。 因此,要使用systemd服务来进行设定

6.1 生成配置文档

vi /etc/systemd/system/mynginx.service

配置文件的内容:

[Unit]
Description= mynginx service
After=network.target
After=network-online.target
[Service]
Restart=always
ExecStart=/usr/bin/podman start -a mynginx
ExecStop=/usr/bin/podman stop -t 10 mynginx
[Install]
WantedBy=multi-user.target

注意:一定要使用编辑工具直接在  /etc/systemd/system/  目录下直接生成配置文件,如果在其他位置,例如 /home目录下,编辑后再cp 或者mv 进去,则下面的操作则不会起效。

6.2 启动容器服务,并设定容器服务开机启动

podman stop mynginx                    #为了更好的验证配置效果,先停止mynginx容器
systemctl start mynginx.service        #启动mynginx容器
systemctl status mynginx.service       #查看该容器服务是否正常。  
systemctl enable mynginx.service       #开机启动的设定命令

6.3 其他容器的配置内容:

mysql.service

[Unit]
Description= mysql service
After=network.target
After=network-online.target
[Service]
Restart=always
ExecStart=/usr/bin/podman start -a mysql
ExecStop=/usr/bin/podman stop -t 10 mysql
[Install]
WantedBy=multi-user.target

myphp.service

[Unit]
Description= myphp service
After=network.target
After=network-online.target
[Service]
Restart=always
ExecStart=/usr/bin/podman start -a myphp
ExecStop=/usr/bin/podman stop -t 10 myphp
[Install]
WantedBy=multi-user.target

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

用systemd设置podman 生成的容器开机自启动 的相关文章

随机推荐