From a2773f1e41eeeef03a1143781d35cc816995131e Mon Sep 17 00:00:00 2001 From: Andrej Shadura <andrew.shadura@collabora.co.uk> Date: Tue, 15 Feb 2022 17:25:48 +0100 Subject: [PATCH] Add a supervisord-managed entrypoint, drop config from the image MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The Docker entrypoint saves effort for users: they can map a config inside a container based on the stock image without having to rebuild it. Since the config is no longer necessary inside the image, don’t install it. Signed-off-by: Andrej Shadura <andrew.shadura@collabora.co.uk> --- Dockerfile | 7 +++---- docker/docker-entrypoint.sh | 13 +++++++++++++ docker/obs-proxy-client.conf | 9 +++++++++ docker/obs-proxy-server.conf | 9 +++++++++ 4 files changed, 34 insertions(+), 4 deletions(-) create mode 100755 docker/docker-entrypoint.sh create mode 100644 docker/obs-proxy-client.conf create mode 100644 docker/obs-proxy-server.conf diff --git a/Dockerfile b/Dockerfile index 5d8244f..37331e2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -16,12 +16,11 @@ LABEL maintainer Andrej Shadura <andrew.shadura@collabora.co.uk> ENV LC_ALL=C.UTF-8 RUN apt-get update \ - && apt-get install -y python3-minimal python3-xdg ssl-cert + && apt-get install -y supervisor python3-minimal python3-xdg ssl-cert COPY --from=builder /usr/local /usr/local RUN mkdir -p /etc/obs-proxy -COPY proxy.conf /etc/obs-proxy/ -#COPY docker-entrypoint.sh /opt/docker-entrypoint.sh -#ENTRYPOINT ["/opt/docker-entrypoint.sh"] +COPY docker/* /opt/ +ENTRYPOINT ["/opt/docker-entrypoint.sh"] diff --git a/docker/docker-entrypoint.sh b/docker/docker-entrypoint.sh new file mode 100755 index 0000000..71161bc --- /dev/null +++ b/docker/docker-entrypoint.sh @@ -0,0 +1,13 @@ +#!/bin/sh + +if [ "$1" != client ] +then + ln -sf /opt/obs-proxy-server.conf /etc/supervisor/conf.d/ + + # Generate ssl-cert + make-ssl-cert generate-default-snakeoil --force-overwrite +else + ln -sf /opt/obs-proxy-client.conf /etc/supervisor/conf.d/ +fi + +exec /usr/bin/supervisord -n diff --git a/docker/obs-proxy-client.conf b/docker/obs-proxy-client.conf new file mode 100644 index 0000000..8ebd120 --- /dev/null +++ b/docker/obs-proxy-client.conf @@ -0,0 +1,9 @@ +[program:obs-proxy-client] +command=/usr/local/bin/obs-proxy-client +stdout_logfile=/var/log/supervisor/obs-proxy-client.log +redirect_stderr=true +autostart=True +priority=1 +stopsignal=KILL +killasgroup=true +stopasgroup=true diff --git a/docker/obs-proxy-server.conf b/docker/obs-proxy-server.conf new file mode 100644 index 0000000..25a7b56 --- /dev/null +++ b/docker/obs-proxy-server.conf @@ -0,0 +1,9 @@ +[program:obs-proxy-server] +command=/usr/local/bin/obs-proxy-server +stdout_logfile=/var/log/supervisor/obs-proxy-server.log +redirect_stderr=true +autostart=True +priority=1 +stopsignal=KILL +killasgroup=true +stopasgroup=true -- GitLab