fix: dockerfile - add AS keywords and create staticfiles directory
Some checks failed
Build and Push Docker Image / build-and-push (push) Failing after 1m57s
Some checks failed
Build and Push Docker Image / build-and-push (push) Failing after 1m57s
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
# =================================================
|
# =================================================
|
||||||
# STAGE 1: Builder - Установка зависимостей
|
# STAGE 1: Builder - Установка зависимостей
|
||||||
# =================================================
|
# =================================================
|
||||||
FROM python:3.12-slim as builder
|
FROM python:3.12-slim AS builder
|
||||||
|
|
||||||
# Устанавливаем переменные окружения
|
# Устанавливаем переменные окружения
|
||||||
ENV PYTHONDONTWRITEBYTECODE=1
|
ENV PYTHONDONTWRITEBYTECODE=1
|
||||||
@@ -33,7 +33,7 @@ RUN poetry install --no-interaction --no-ansi --no-root --only main
|
|||||||
# =================================================
|
# =================================================
|
||||||
# STAGE 2: Final - Создание чистого и безопасного образа
|
# STAGE 2: Final - Создание чистого и безопасного образа
|
||||||
# =================================================
|
# =================================================
|
||||||
FROM python:3.12-slim
|
FROM python:3.12-slim AS stage-final
|
||||||
|
|
||||||
# Устанавливаем переменные окружения
|
# Устанавливаем переменные окружения
|
||||||
ENV PYTHONDONTWRITEBYTECODE=1
|
ENV PYTHONDONTWRITEBYTECODE=1
|
||||||
@@ -61,6 +61,11 @@ COPY --chown=app:app . .
|
|||||||
# Переключаемся на пользователя без прав root
|
# Переключаемся на пользователя без прав root
|
||||||
USER app
|
USER app
|
||||||
|
|
||||||
|
# Создаем папку для собранной статики с правильными правами владельца
|
||||||
|
# Это КРИТИЧНО, т.к. collectstatic попытается создать её и написать туда файлы.
|
||||||
|
# Без этой папки (и без прав на её создание) collectstatic упадет с PermissionError.
|
||||||
|
RUN mkdir -p /home/app/web/staticfiles
|
||||||
|
|
||||||
# Собираем статику
|
# Собираем статику
|
||||||
# Используем dummy ключ, так как .env файла нет на этапе сборки
|
# Используем dummy ключ, так как .env файла нет на этапе сборки
|
||||||
RUN SECRET_KEY=dummy python dicquo/manage.py collectstatic --noinput --clear
|
RUN SECRET_KEY=dummy python dicquo/manage.py collectstatic --noinput --clear
|
||||||
|
|||||||
Reference in New Issue
Block a user