Skip to content

Instantly share code, notes, and snippets.

@jackspirou
Created January 9, 2016 20:07
Show Gist options
  • Save jackspirou/6922b8c525a01733220a to your computer and use it in GitHub Desktop.
Save jackspirou/6922b8c525a01733220a to your computer and use it in GitHub Desktop.
systemd container
[Unit]
Description=Foobar
Requires=flanneld.service
After=flanneld.service
Requires=docker.service
After=docker.service
Requires=etcd2.service
After=etcd2.service
[Service]
Restart=always
RestartSec=10s
Type=notify
NotifyAccess=all
TimeoutStartSec=120
TimeoutStopSec=15
ExecStop=/bin/sh -c '/usr/bin/docker ps | /usr/bin/grep %p 1> /dev/null && /usr/bin/docker stop %p || true'
ExecStartPre=/bin/sh -c '/usr/bin/docker ps | /usr/bin/grep %p 1> /dev/null && /usr/bin/docker kill %p || true'
ExecStartPre=/bin/sh -c '/usr/bin/docker ps -a | /usr/bin/grep %p 1> /dev/null && /usr/bin/docker rm %p || true'
ExecStartPre=/usr/bin/docker pull webhippie/foobar:latest
ExecStart=/usr/bin/docker run -d --rm \
--name %p \
--hostname %p \
--env VAR1=foo \
--env VAR2=foo \
webhippie/foobar:latest
[Install]
WantedBy=multi-user.target
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment