Recently, I have been transitioning to Podman for running my container infrastructure. In the process, I brought over Watchtower which I have previously used for auto-updating docker containers. Before doing so, I didn’t check its compatibility (whoops) and found a few of my containers would every other week or so not come back up.
I then remembered that I restart my server for general system updates almost every day. What if I perform the podman container updates on start up? After modiyfing my systemd service to include an extra field called ExecStartPre
and removing Watchtower, I found no more missing containers! The field ExecStartPre
performs a pull (update) before starting up the containers via ExecStart
.
[Unit]
Description=Docker Compose Application Service
Requires=network.target podman.socket
After=network.target podman.socket
[Service]
Type=oneshot
RemainAfterExit=yes
WorkingDirectory=/home/brandonrozek
ExecStartPre=/usr/bin/docker-compose pull
ExecStart=/usr/bin/docker-compose up -d --force-recreate
ExecStop=/usr/bin/docker-compose down
TimeoutStartSec=0
[Install]
WantedBy=multi-user.target
Top comments (0)