coreos-home-server/config/service/nginx/nginx-php@.service
Alex Palaistras d9f675817e First public release for CoreOS Home Server
This contains the culmination of work done privately for a few months,
and is intended to be a solid basis for other peoples' experimentations
with setting up single-node, home-server setups using Fedora CoreOS.
2021-03-20 16:32:42 +00:00

30 lines
1.5 KiB
Desktop File

[Unit]
Description=Nginx PHP web service for %I
Wants=container-build@nginx.service container-build@%i.service container-network@ingress.service container-network@internal.service
After=container-build@nginx.service container-build@%i.service container-network@ingress.service container-network@internal.service
Before=nginx-ingress-http@%i.service
[Service]
Restart=always
PrivateTmp=true
Environment=SERVER_NAME=%i
Environment=NGINX_CONF=/etc/container-service/nginx/service/%p.conf.template
ExecStartPre=/bin/install --owner 33 --group 33 -d /var/lib/container-service/%i
ExecStartPre=/bin/install -d /tmp/conf.d
ExecStartPre=/bin/sh -c "envsubst '$SERVER_NAME' < ${NGINX_CONF} > /tmp/conf.d/%i.conf"
ExecStartPre=/bin/podman pod create --replace --net internal,ingress --name %i
ExecStartPre=/bin/podman create --replace --pull never --pod %i \
--env-file /etc/container-service/%i/%i.env \
--volume /var/lib/container-service/%i:/data:z \
--name %i-php localhost/%i:latest
ExecStartPre=/bin/podman create --replace --pull never --pod %i \
--volume /tmp/conf.d:/etc/nginx/conf.d:z \
--volumes-from=%i-php:z,ro \
--name %i-nginx localhost/nginx:latest
ExecStart=/bin/sh -c 'podman pod start %i && podman start --attach %i-php'
ExecStop=/bin/podman stop --time 10 %i-nginx %i-php
[Install]
Alias=%i.service
WantedBy=multi-user.target