Обновлен Dockerfile с двухэтапной сборкой, экспортом зависимостей через poetry, сборкой статики и удалением лишних файлов (экономия ~20МБ). Обновлен docker-compose.yml с привязкой к localhost для безопасности. Обновлен .dockerignore для исключения ненужных файлов (source maps, RTL CSS, TTF). Добавлены таймауты SQLite в settings.py. Минимальные параметры Gunicorn: 1 worker, timeout 30s, max-requests 100. Тестировано и работает на http://localhost:8040
51 lines
1.3 KiB
YAML
51 lines
1.3 KiB
YAML
# docker-compose.yml для локальной разработки проекта rosmorport_tsts
|
|
# Использование: docker-compose up
|
|
|
|
# version: '3.9'
|
|
|
|
services:
|
|
# Django приложение
|
|
web:
|
|
# Строим образ из Dockerfile в текущей директории
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
|
|
# Имя контейнера
|
|
container_name: rosmorpor-tst-site--backend
|
|
|
|
# Переменные окружения для разработки
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- DOCKER_ENV=1
|
|
- DJANGO_LOG_LEVEL=DEBUG
|
|
- DEBUG=True
|
|
- PYTHONUNBUFFERED=1
|
|
|
|
# Монтируем текущую директорию для разработки
|
|
volumes:
|
|
- .:/app
|
|
- ./public/media:/app/public/media
|
|
- ./database:/app/database
|
|
|
|
# Перенаправляем порты
|
|
ports:
|
|
- "127.0.0.1:8040:8000"
|
|
|
|
# Именованные тома для хранения данных
|
|
volumes:
|
|
django_staticfiles:
|
|
driver: local
|
|
django_mediafiles:
|
|
driver: local
|
|
# postgres_data:
|
|
# driver: local
|
|
|
|
# Опционально: сеть для сервисов
|
|
networks:
|
|
default:
|
|
name: rosmorport_network
|
|
driver: bridge
|
|
|