From b3ab5a6ce37d72915ebaee2822a6f01e4b76eb08 Mon Sep 17 00:00:00 2001 From: Alex Palaistras Date: Sat, 27 Mar 2021 14:54:05 +0000 Subject: [PATCH] Fix various issues with Nginx containers --- config/common/systemd/container-network@.service | 1 + config/service/nginx/systemd/nginx-php@.service | 13 ++++++------- config/service/nginx/systemd/nginx-static@.service | 10 ++++------ 3 files changed, 11 insertions(+), 13 deletions(-) diff --git a/config/common/systemd/container-network@.service b/config/common/systemd/container-network@.service index 2240b5c..ada0926 100644 --- a/config/common/systemd/container-network@.service +++ b/config/common/systemd/container-network@.service @@ -2,6 +2,7 @@ Description=Container network for %I Wants=network-online.target After=network-online.target +ConditionPathExists=!/etc/cni/net.d/%i.conflist [Service] Type=oneshot diff --git a/config/service/nginx/systemd/nginx-php@.service b/config/service/nginx/systemd/nginx-php@.service index ed09ad4..c4dc1fe 100644 --- a/config/service/nginx/systemd/nginx-php@.service +++ b/config/service/nginx/systemd/nginx-php@.service @@ -6,23 +6,22 @@ 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,nginx-ingress --name %i +ExecStartPre=/bin/podman pod create --replace --net mariadb,nginx-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 +ExecStartPre=/bin/sh -c "envsubst '$SERVER_NAME' < ${NGINX_CONF} > /tmp/%i.conf" +ExecStartPre=/bin/podman cp /tmp/%i.conf %i-nginx:/etc/nginx/conf.d +ExecStartPre=/bin/rm -f /tmp/%i.conf +ExecStart=/bin/sh -c 'podman pod start %i && podman wait %i-php && podman attach --no-stdin %i-php' +ExecStop=/bin/podman pod stop --time 10 %i [Install] Alias=%i.service diff --git a/config/service/nginx/systemd/nginx-static@.service b/config/service/nginx/systemd/nginx-static@.service index d84de0c..49285b4 100644 --- a/config/service/nginx/systemd/nginx-static@.service +++ b/config/service/nginx/systemd/nginx-static@.service @@ -6,14 +6,12 @@ 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 -d /tmp/conf.d -ExecStartPre=/bin/sh -c "envsubst '$SERVER_NAME' < ${NGINX_CONF} > /tmp/conf.d/%i.conf" -ExecStartPre=/bin/podman create --replace --pull never --net nginx-ingress \ - --volume /tmp/conf.d:/etc/nginx/conf.d:z \ - --name %i localhost/%i:latest +ExecStartPre=/bin/podman create --replace --pull never --net nginx-ingress --name %i localhost/%i:latest +ExecStartPre=/bin/sh -c "envsubst '$SERVER_NAME' < ${NGINX_CONF} > /tmp/%i.conf" +ExecStartPre=/bin/podman cp /tmp/%i.conf %i:/etc/nginx/conf.d +ExecStartPre=/bin/rm -f /tmp/%i.conf ExecStart=/bin/podman start --attach %i ExecStop=/bin/podman stop --time 10 %i