diff --git a/api/Dockerfile b/api/Dockerfile index e339b78ff..b8a0334a5 100644 --- a/api/Dockerfile +++ b/api/Dockerfile @@ -2,25 +2,24 @@ FROM alpine:3.13 as builder RUN \ echo 'installing dependencies' && \ - apk add --no-cache \ - git \ - musl-dev \ + apk add --no-cache \ + git \ + musl-dev \ gcc \ postgresql-dev \ - python3-dev \ - py3-psycopg2 \ - libldap \ - libffi-dev \ - make \ - zlib-dev \ - jpeg-dev \ + python3-dev \ + py3-psycopg2 \ + libldap \ + libffi-dev \ + make \ + zlib-dev \ + jpeg-dev \ openldap-dev \ openssl-dev \ cargo \ libxml2-dev \ libxslt-dev \ && \ - \ ln -s /usr/bin/python3 /usr/bin/python # create virtual env for next stage @@ -53,21 +52,21 @@ ENV PATH="/venv/bin:$PATH" RUN apk add --no-cache \ libmagic \ - bash \ - gettext \ - python3 \ + bash \ + gettext \ + python3 \ jpeg-dev \ - ffmpeg \ - libpq \ + ffmpeg \ + libpq \ libxml2 \ libxslt \ && \ - \ ln -s /usr/bin/python3 /usr/bin/python - -ENTRYPOINT ["./compose/django/entrypoint.sh"] -CMD ["./compose/django/server.sh"] - COPY . /app WORKDIR /app + +RUN chmod 755 compose compose/django + +ENTRYPOINT ["./compose/django/entrypoint.sh"] +CMD ["./compose/django/server.sh"] diff --git a/api/compose/django/entrypoint.sh b/api/compose/django/entrypoint.sh index 5259f49f8..56a9b7375 100755 --- a/api/compose/django/entrypoint.sh +++ b/api/compose/django/entrypoint.sh @@ -19,8 +19,7 @@ if [ -z "$CELERY_BROKER_URL" ]; then fi # we copy the frontend files, if any so we can serve them from the outside -if [ -d "frontend" ]; then - mkdir -p /frontend +if [ -d "frontend" ] && [ -d "/frontend" ]; then cp -r frontend/* /frontend/ export FUNKWHALE_SPA_HTML_ROOT=/frontend/index.html fi diff --git a/changes/changelog.d/1334.enhancement b/changes/changelog.d/1334.enhancement new file mode 100644 index 000000000..d80969eb8 --- /dev/null +++ b/changes/changelog.d/1334.enhancement @@ -0,0 +1 @@ +Allow running multi-container setup on non-root user inside docker (!1375) (fixes #1334)