From 67e16b82df0fa97eb3409ca00012581e8d5a9b0e Mon Sep 17 00:00:00 2001 From: Alex Palaistras Date: Sun, 13 Aug 2023 16:03:42 +0100 Subject: [PATCH] navidrome: Move to Quadlet --- service/navidrome/Containerfile | 12 +++++------ service/navidrome/quadlet/navidrome.container | 17 ++++++++++++++++ service/navidrome/spec.bu | 8 ++------ service/navidrome/systemd/navidrome.service | 20 ------------------- 4 files changed, 24 insertions(+), 33 deletions(-) create mode 100644 service/navidrome/quadlet/navidrome.container delete mode 100644 service/navidrome/systemd/navidrome.service diff --git a/service/navidrome/Containerfile b/service/navidrome/Containerfile index d1560a0..9458ee9 100644 --- a/service/navidrome/Containerfile +++ b/service/navidrome/Containerfile @@ -1,13 +1,11 @@ -FROM docker.io/debian:bullseye-slim +FROM docker.io/debian:bookworm-slim ARG VERSION=0.49.2 -RUN apt-get update -y && apt-get upgrade -y && \ - apt-get install -y --no-install-recommends curl ca-certificates gosu ffmpeg - ENV PACKAGE_URL https://github.com/deluan/navidrome/releases/download/v${VERSION}/navidrome_${VERSION}_Linux_x86_64.tar.gz -RUN curl -L ${PACKAGE_URL} | tar -C /bin --no-same-owner -xvzf - navidrome && chmod +x /bin/navidrome - -RUN apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false curl +RUN apt-get update -y && apt-get upgrade -y && \ + apt-get install -y --no-install-recommends curl ca-certificates gosu ffmpeg && \ + curl -L ${PACKAGE_URL} | tar -C /bin --no-same-owner -xvzf - navidrome && chmod +x /bin/navidrome && \ + apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false curl RUN addgroup --system --gid 10000 navidrome RUN adduser --system --uid 10000 --ingroup navidrome --home /var/lib/navidrome navidrome diff --git a/service/navidrome/quadlet/navidrome.container b/service/navidrome/quadlet/navidrome.container new file mode 100644 index 0000000..f903992 --- /dev/null +++ b/service/navidrome/quadlet/navidrome.container @@ -0,0 +1,17 @@ +[Unit] +Description=Navidrome music server +Wants=container-build@%N.service container-volume@%N.service +After=container-build@%N.service container-volume@%N.service + +[Container] +ContainerName=%N +Image=localhost/%N:latest +Network=internal +Volume=%N:/var/lib/%N:z +Volume=%N-music:/music:z,ro + +[Service] +Restart=on-failure + +[Install] +WantedBy=multi-user.target diff --git a/service/navidrome/spec.bu b/service/navidrome/spec.bu index 5488244..b5379ad 100644 --- a/service/navidrome/spec.bu +++ b/service/navidrome/spec.bu @@ -4,9 +4,5 @@ storage: trees: - path: /etc/coreos-home-server/navidrome local: service/navidrome/ - - path: /etc/systemd/system - local: service/navidrome/systemd/ -systemd: - units: - - name: navidrome.service - enabled: true + - path: /etc/containers/systemd + local: service/navidrome/quadlet/ diff --git a/service/navidrome/systemd/navidrome.service b/service/navidrome/systemd/navidrome.service deleted file mode 100644 index 6647c01..0000000 --- a/service/navidrome/systemd/navidrome.service +++ /dev/null @@ -1,20 +0,0 @@ -[Unit] -Description=Navidrome Music Server -Wants=container-build@%N.service container-volume@%N.service -After=container-build@%N.service container-volume@%N.service - -[Service] -Type=notify -NotifyAccess=all -SyslogIdentifier=%N -Restart=on-failure -Environment=PODMAN_SYSTEMD_UNIT=%n -ExecStart=/bin/podman run --replace --name %N --net internal --sdnotify=conmon \ - --volume %N:/var/lib/%N:z \ - --volume %N-music:/music:z,ro \ - localhost/%N:latest -ExecStop=/bin/podman stop --ignore --time 10 %N -ExecStopPost=/bin/podman rm --ignore --force %N - -[Install] -WantedBy=multi-user.target