Обновление файла
This commit is contained in:
+8
-4
@@ -22,16 +22,20 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
|||||||
&& groupadd --system --gid 1000 panel \
|
&& groupadd --system --gid 1000 panel \
|
||||||
&& useradd --system --uid 1000 --gid panel --home-dir /app panel
|
&& useradd --system --uid 1000 --gid panel --home-dir /app panel
|
||||||
|
|
||||||
# Ставим заранее собранные wheels.
|
# Конфигурация и deps ставятся ДО копирования кода — это закэшируется
|
||||||
|
# даже когда код меняется.
|
||||||
COPY --from=builder /wheels /wheels
|
COPY --from=builder /wheels /wheels
|
||||||
COPY requirements.txt .
|
COPY requirements.txt .
|
||||||
RUN pip install --no-cache-dir --no-index --find-links=/wheels -r requirements.txt \
|
RUN pip install --no-cache-dir --no-index --find-links=/wheels -r requirements.txt \
|
||||||
&& rm -rf /wheels
|
&& rm -rf /wheels
|
||||||
|
|
||||||
COPY app ./app
|
# chown делаем РАНЬше копирования кода, чтобы код не зависел по правам
|
||||||
|
# от изменений в app/. Слой с chown закэшируется отдельно.
|
||||||
# Раздаём права и переключаемся на непривилегированного пользователя.
|
|
||||||
RUN chown -R panel:panel /app
|
RUN chown -R panel:panel /app
|
||||||
|
|
||||||
|
# Копируем код — единственный слой, который пересобирается при изменении кода.
|
||||||
|
COPY --chown=panel:panel app ./app
|
||||||
|
|
||||||
USER panel
|
USER panel
|
||||||
|
|
||||||
EXPOSE 8000
|
EXPOSE 8000
|
||||||
|
|||||||
Reference in New Issue
Block a user