From 3086da0e2bd9e096e9644e80fcf81bf70ba96197 Mon Sep 17 00:00:00 2001 From: Logan Cusano Date: Thu, 29 May 2025 01:02:07 -0400 Subject: [PATCH] Update docker to use supervisor --- Dockerfile | 14 +++++++------- op25-liq.service | 15 --------------- supervisord.conf | 20 ++++++++++++++++++++ 3 files changed, 27 insertions(+), 22 deletions(-) delete mode 100644 op25-liq.service create mode 100644 supervisord.conf diff --git a/Dockerfile b/Dockerfile index f22679b..ee73e55 100644 --- a/Dockerfile +++ b/Dockerfile @@ -27,7 +27,8 @@ RUN apt-get update && \ libpulse-dev \ apulse \ ffmpeg \ - liquidsoap + liquidsoap \ + supervisor # Clone the boatbod op25 repository RUN git clone -b gr310 https://github.com/boatbod/op25 /op25 @@ -41,10 +42,6 @@ RUN ./install.sh -f # Update the liquid file COPY op25.liq /op25/op25.liq -# Enable the liquidsoap service -COPY op25-liq.service /etc/systemd/system -RUN systemctl enable op25-liq - # Install Python dependencies COPY requirements.txt /tmp/requirements.txt RUN pip3 install --no-cache-dir -r /tmp/requirements.txt @@ -74,5 +71,8 @@ COPY ./app/internal/opus /app/internal/opus # Copy the rest of the directory contents into the container at /app COPY ./app /app -# Run the node script -ENTRYPOINT ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8001", "--reload"] \ No newline at end of file +# Add Supervisord configuration +COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf + +# Modify the ENTRYPOINT to run Supervisord +ENTRYPOINT ["/usr/bin/supervisord", "-n", "-c", "/etc/supervisor/conf.d/supervisord.conf"] \ No newline at end of file diff --git a/op25-liq.service b/op25-liq.service deleted file mode 100644 index db8d3ff..0000000 --- a/op25-liq.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=op25-liq -After=syslog.target network.target nss-lookup.target network-online.target -Requires=network-online.target - -[Service] -User=1000 -Group=1000 -WorkingDirectory=/op25/op25/gr-op25_repeater/apps -ExecStart=/usr/bin/liquidsoap op25.liq -RestartSec=5 -Restart=on-failure - -[Install] -WantedBy=multi-user.target \ No newline at end of file diff --git a/supervisord.conf b/supervisord.conf new file mode 100644 index 0000000..759ffb5 --- /dev/null +++ b/supervisord.conf @@ -0,0 +1,20 @@ +[supervisord] +nodaemon=true + +[program:op25-liq] +command=/usr/bin/liquidsoap /op25/op25.liq +directory=/op25 +autostart=true +autorestart=true +stderr_logfile=/var/log/supervisor/op25-liq.err.log +stdout_logfile=/var/log/supervisor/op25-liq.out.log +user=root + +[program:drb-client-discord] +command=uvicorn main:app --host 0.0.0.0 --port 8001 --reload +directory=/app +autostart=true +autorestart=true +stderr_logfile=/var/log/supervisor/main_app.err.log +stdout_logfile=/var/log/supervisor/main_app.out.log +user=root \ No newline at end of file