Skip to content
Snippets Groups Projects
wordpress@.service 1.12 KiB
Newer Older
[Unit]
Description=%p-%i

Pierre Ozoux's avatar
Pierre Ozoux committed
# Requirements
Requires=docker.service
Requires=init@%i.service
Requires=mysql@%i.service
Requires=discovery@%p-%i.service
Requires=backup@%i.timer
Pierre Ozoux's avatar
Pierre Ozoux committed
# Dependency ordering
After=docker.service
After=init@%i.service
Pierre Ozoux's avatar
Pierre Ozoux committed
After=mysql@%i.service
Before=discovery@%p-%i.service
Before=backup@%i.timer
# Dependency binding
BindsTo=mysql@%i.service
BindsTo=discovery@%p-%i.service
[Service]
Restart=always
ExecStartPre=-/usr/bin/docker kill %p-%i
ExecStartPre=-/usr/bin/docker rm %p-%i
ExecStartPre=/bin/bash -euxc ' \
  application_folder=/data/domains/%i/%p; \
  if [ ! -d $application_folder ]; then \
    mkdir -p $application_folder; \
    touch $application_folder/.htaccess; \
  fi; \
  cat /data/domains/%i/mysql/.env | sed s/MYSQL_PASS/DB_PASS/ > $application_folder/.env'

Pierre Ozoux's avatar
Pierre Ozoux committed
ExecStart=/usr/bin/docker run \
  --name %p-%i \
  --link mysql-%i:db \
Pierre Ozoux's avatar
Pierre Ozoux committed
  -v /data/domains/%i/%p/wp-content:/app/wp-content \
  -v /data/domains/%i/%p/.htaccess:/app/.htaccess \
  --env-file /data/domains/%i/%p/.env \
  pierreozoux/%p
ExecReload=/usr/bin/docker restart %p-%i
ExecStop=/usr/bin/docker stop %p-%i

[Install]
WantedBy=multi-user.target