Update Dockerfile

This commit is contained in:
Alexandre
2026-05-21 18:22:28 +02:00
committed by GitHub
parent 910f160fd5
commit 7647894e83

View File

@@ -27,6 +27,8 @@ ENV S6_CMD_WAIT_FOR_SERVICES=1 \
S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0 \
S6_SERVICES_GRACETIME=0
USER root
# Global LSIO modifications
COPY ha_lsio.sh /ha_lsio.sh
ARG CONFIGLOCATION="/config"
@@ -35,18 +37,18 @@ RUN chmod 744 /ha_lsio.sh && if grep -qr "lsio" /etc; then /ha_lsio.sh "$CONFIGL
# Install REDIS
ENV DOCKER_MODS="imagegenius/mods:universal-redis"
# && chmod 777 -R /docker-mods \
# && /./docker-mods/* || ls / \
# && if [ !-f /defaults/redis.conf ]; then echo "Not installed" && exit 1; fi
#ENV DOCKER_MODS=""
##################
# 3 Install apps #
##################
# Add rootfs
COPY rootfs/ /
RUN find . -type f \( -name "*.sh" -o -name "run" -o -name "finish" \) -print -exec chmod +x {} \;
# FIX BUG 1: scope find to HA-owned directories only, never the whole filesystem.
# Running `find .` from WORKDIR=/ hits node_modules inside /app/immich and fails chmod (exit 1).
RUN find /etc /usr/local/bin /usr/local/lib /usr/local/share \
-type f \( -name "*.sh" -o -name "run" -o -name "finish" \) \
-exec chmod +x {} \; 2>/dev/null || true
# Uses /bin for compatibility purposes
# hadolint ignore=DL4005
@@ -61,7 +63,7 @@ COPY ha_automodules.sh /ha_automodules.sh
RUN chmod 744 /ha_automodules.sh && /ha_automodules.sh "$MODULES" && rm /ha_automodules.sh
# Manual apps
ENV PACKAGES="sudo sed yamllint pip jq"
ENV PACKAGES="sudo yamllint pip sed jq"
# Automatic apps & bashio
COPY ha_autoapps.sh /ha_autoapps.sh
@@ -80,10 +82,16 @@ RUN chmod 777 /ha_entrypoint.sh
COPY bashio-standalone.sh /usr/local/lib/bashio-standalone.sh
RUN chmod 0755 /usr/local/lib/bashio-standalone.sh
RUN apt-get update && apt-get install -y --no-install-recommends sed \
&& sed -i "s|postgresql-16|postgresql-15|g" /etc/s6-overlay/s6-rc.d/init-test-run/run
# FIX BUG 2: /etc/s6-overlay/s6-rc.d/init-test-run/run no longer exists in the
# imagegenius base image (service was removed). Guard with file existence check.
# The base image already ships postgresql-client-14 through 18, so the redundant
# install is removed. Only the conditional sed is kept for backward compatibility
# in case a future base image re-introduces the file.
RUN if [ -f /etc/s6-overlay/s6-rc.d/init-test-run/run ]; then \
sed -i "s|postgresql-16|postgresql-15|g" /etc/s6-overlay/s6-rc.d/init-test-run/run; \
fi
# Install dependencies
# Install dependencies (postgresql-client for psql CLI used in 99-run.sh)
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
RUN apt-get update && apt-get install -y --no-install-recommends \
lsb-release \
@@ -156,3 +164,4 @@ HEALTHCHECK \
--start-period=30s \
--timeout=25s \
CMD curl -A "HealthCheck: Docker/1.0" -s -f "http://127.0.0.1:${HEALTH_PORT}${HEALTH_URL}" &>/dev/null || exit 1