11FROM archlinux:base-devel AS python-base
22ARG TZ=Asia/Vladivostok
3- ARG DOCKER_HOST_UID=10000
4- ARG DOCKER_HOST_GID=10000
3+ ARG DOCKER_HOST_UID=1000
4+ ARG DOCKER_HOST_GID=1000
55ARG DOCKER_USER=devuser
66ARG DOCKER_USER_HOME=/home/devuser
77ARG MIRROR_LIST_COUNTRY=RU
@@ -61,26 +61,31 @@ RUN curl -sSL https://install.python-poetry.org | POETRY_VERSION=$POETRY_VERSION
6161ENV PATH=$POETRY_HOME/bin:$PATH
6262ENV PYTHONPATH=/application/src
6363ENV PROJECT_ROOT=/application
64+ ENV HOME=$DOCKER_USER_HOME
6465
6566FROM python-base AS poetry
67+ ARG DOCKER_HOST_UID=1000
68+ ARG DOCKER_HOST_GID=1000
6669ARG DOCKER_USER=devuser
6770RUN mkdir -p $POETRY_CACHE_DIR && \
6871 chown -R $DOCKER_USER $POETRY_CACHE_DIR
6972RUN mkdir -p $PIP_CACHE_DIR && \
7073 chown -R $DOCKER_USER $PIP_CACHE_DIR
71- USER $DOCKER_USER
74+ USER ${DOCKER_HOST_UID}:${DOCKER_HOST_GID}
7275WORKDIR /application
7376
7477FROM python-base AS app-build
78+ ARG DOCKER_HOST_UID=1000
79+ ARG DOCKER_HOST_GID=1000
7580ARG DOCKER_USER=devuser
7681COPY src/ build/src
7782COPY README.md /build/
7883COPY pyproject.toml poetry.lock /build/
7984ARG POETRY_OPTIONS_APP="--only main --compile"
8085RUN poetry install $POETRY_OPTIONS_APP -n -v -C /build && \
8186 rm -rf $POETRY_CACHE_DIR/* && rm -rf $PIP_CACHE_DIR/*
82- RUN sed -i "/\b\( $ DOCKER_USER\)\b /d" /etc/sudoers
83- USER $DOCKER_USER
87+ RUN sed -i "/^${ DOCKER_USER}[[:space:]] /d" /etc/sudoers
88+ USER ${DOCKER_HOST_UID}:${DOCKER_HOST_GID}
8489WORKDIR /application
8590
8691FROM python-base AS build-deps-dev
@@ -104,15 +109,19 @@ RUN mkdir -p $DOCKER_USER_HOME/.config && \
104109 chown -R $DOCKER_USER $DOCKER_USER_HOME/.config
105110
106111FROM build-deps-dev AS dev-build
112+ ARG DOCKER_HOST_UID=1000
113+ ARG DOCKER_HOST_GID=1000
107114ARG DOCKER_USER=devuser
108- USER $DOCKER_USER
115+ USER ${DOCKER_HOST_UID}:${DOCKER_HOST_GID}
109116WORKDIR /application
110117RUN git config --global --add safe.directory /application
111118
112119FROM build-deps-dev AS vim-ide
120+ ARG DOCKER_HOST_UID=1000
121+ ARG DOCKER_HOST_GID=1000
113122ARG DOCKER_USER=devuser
114123ARG DOCKER_USER_HOME=/home/devuser
115- USER $DOCKER_USER
124+ USER ${DOCKER_HOST_UID}:${DOCKER_HOST_GID}
116125RUN curl -fLo $DOCKER_USER_HOME/.vim/autoload/plug.vim --create-dirs \
117126 https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
118127RUN curl -fLo $DOCKER_USER_HOME/.vim/spell/en.utf-8.spl \
0 commit comments