Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
[Unit]
Description=%p-%i
# Requirements
Requires=docker.service
Requires=init@%i.service
Requires=mysql@%i.service
Requires=discovery@%i.service
Requires=backup@%i.timer
# Dependency ordering
After=docker.service
After=init@%i.service
After=mysql@%i.service
Before=discovery@%i.service
Before=backup@%i.timer
[Service]
Restart=always
EnvironmentFile=/data/domains/%i/.env
ExecStartPre=-/usr/bin/docker kill %i
ExecStartPre=-/usr/bin/docker rm %i
ExecStartPre=/bin/bash -euxc ' \
application_folder=/data/domains/%i/${APPLICATION}; \
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'
ExecStart=/usr/bin/docker run \
--name %i \
--link mysql-%i:db \
-v /data/domains/%i/${APPLICATION}/data:$(cat /data/indiehosters/dockerfiles/services/${APPLICATION}/VOLUME) \
-v /data/domains/%i/${APPLICATION}/.htaccess:/app/.htaccess \
--env-file /data/domains/%i/${APPLICATION}/.env \
pierreozoux/${APPLICATION}
ExecReload=/bin/bash -euxc ' \
/usr/bin/docker restart %i; \
systemctl restart discovery@%i.service; \
systemctl restart backup@%i.timer;'
ExecStop=/bin/bash -euxc ' \
systemctl stop discovery@%i.service; \
systemctl stop backup@%i.timer; \
/usr/bin/docker stop %i;'
[Install]
WantedBy=multi-user.target