天天看點

用systemd設定podman 生成的容器開機自啟動

實際上已經在之前的部落格裡面寫過了,不過這一部分包含其中。

為便于尋找和配置使用,單獨編寫了此标題,并通過連接配接進行指向

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
           

繼續閱讀