From: Stephen Finucane Date: Tue, 15 Oct 2019 12:41:20 +0000 (+0100) Subject: docker: Require GID also X-Git-Tag: v2.2.0-rc1~54 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b4f4c8554c1168ffe177dc11ddf9ff1535c1ff31;p=thirdparty%2Fpatchwork.git docker: Require GID also If you don't do this, created files end up with a group of 'gcc' or whatever group has an ID of 1000. Signed-off-by: Stephen Finucane --- diff --git a/docker-compose.yml b/docker-compose.yml index 90b24c22..1762d4a6 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -15,6 +15,7 @@ services: dockerfile: ./tools/docker/Dockerfile args: - UID + - GID depends_on: - db command: python3 manage.py runserver 0.0.0.0:8000 @@ -24,5 +25,6 @@ services: - "8000:8000" environment: - UID + - GID - PW_TEST_DB_HOST=db - PW_TEST_DB_PORT=3306 diff --git a/tools/docker/Dockerfile b/tools/docker/Dockerfile index 550871b6..61678134 100644 --- a/tools/docker/Dockerfile +++ b/tools/docker/Dockerfile @@ -1,11 +1,13 @@ FROM ubuntu:18.04 ARG UID +ARG GID # make sure the user has configured the '.env' file and quick fail if not -RUN echo $UID -RUN [ -n "$UID" ] || { echo "You must define UID in .env" 1>&2; exit 1; } +RUN echo $UID; echo $GID; \ + [ -n "$UID" ] || { echo "You must define UID in .env" 1>&2; exit 1; }; \ + [ -n "$GID" ] || { echo "You must define GID in .env" 1>&2; exit 1; } ARG TZ="Australia/Canberra" ENV LANG="C.UTF-8" @@ -18,8 +20,9 @@ ENV PYTHONUNBUFFERED 1 ENV PROJECT_HOME /home/patchwork/patchwork ENV DJANGO_SETTINGS_MODULE patchwork.settings.dev -RUN useradd --uid=$UID --create-home patchwork -RUN rm /etc/localtime; ln -s /usr/share/zoneinfo/$TZ /etc/localtime +RUN groupadd --gid=$GID patchwork && \ + useradd --uid=$UID --gid=$GID --create-home patchwork +RUN rm -f /etc/localtime; ln -s /usr/share/zoneinfo/$TZ /etc/localtime RUN apt-get update && apt-get install -y --no-install-recommends \ build-essential \