diff --git a/Dockerfile b/Dockerfile index c6ba24e..e7aabb0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -14,14 +14,14 @@ COPY --from=ghcr.io/astral-sh/uv:latest /uv /usr/local/bin/uv COPY --from=docker.io/caddy:latest /usr/bin/caddy /usr/local/bin/caddy COPY docker/run.sh /usr/local/bin/runhub.sh -COPY docker/Caddyfile /etc/caddy/Caddyfile +COPY docker/Caddyfile /app/config/caddy/Caddyfile ADD . /app RUN uv sync --frozen \ && uv pip install gunicorn --no-cache-dir \ && chmod a+x /usr/local/bin/runhub.sh \ - && mkdir -p /app/run && chgrp -R 0 /app/run && chmod -R g=u /app/run \ + && mkdir -p /app/config/caddy /app/run/caddy /app/run/gunicorn && chgrp -R 0 /app && chmod -R g=u /app && chmod g+w /app/config/caddy/Caddyfile \ && SECRET_KEY= python -m hub collectstatic --noinput CMD ["/usr/local/bin/runhub.sh"] diff --git a/docker/Caddyfile b/docker/Caddyfile index 10af324..10a7451 100644 --- a/docker/Caddyfile +++ b/docker/Caddyfile @@ -4,7 +4,7 @@ log { output stderr format console - level ERROR + level INFO } } diff --git a/docker/run.sh b/docker/run.sh index e3e2717..55aae93 100644 --- a/docker/run.sh +++ b/docker/run.sh @@ -2,18 +2,22 @@ # Create required directories with appropriate permissions mkdir -p /app/run/caddy /app/run/gunicorn +chmod -R g+w /app/run + +# Set Caddy config location +export XDG_CONFIG_HOME="/app/config" echo "Applying database migrations" python -m hub migrate echo "Starting Caddy" -caddy run --config /etc/caddy/Caddyfile & +exec caddy run --config /app/config/caddy/Caddyfile --adapter caddyfile 2>&1 & echo "Starting Gunicorn" exec \ gunicorn \ -w 4 \ - --access-logfile None \ + --access-logfile - \ --error-log - \ --capture-output \ --pythonpath /app/.venv/lib/python3.13/site-packages/ \