v0.1 - макет интерфейса, аутентификация через логин, аккаунт админа, создание партии в 2 этапа, базовые настройки профиля и группы, переключение между группами, статистика

This commit is contained in:
2026-06-16 17:41:06 +03:00
parent 6ab74f01aa
commit 56b5d09a4d
123 changed files with 13572 additions and 21 deletions
+41
View File
@@ -0,0 +1,41 @@
# Локальный «клон прода» в контейнере — для проверки прод-сборки на своей машине
# (а не на Raspberry Pi). Тот же образ, что и прод, но изолированные тома, единый .env
# и порт 8080 (чтобы не конфликтовать с dev-uvicorn на :8000).
#
# Обычно запускается лаунчером при APP_ENV=test (run.ps1 / run.sh). Вручную:
# docker compose -f docker-compose.test.yml up --build -d
# Открыть: http://localhost:8080 (Swagger: /api/docs)
# Остановить и стереть данные: docker compose -f docker-compose.test.yml down -v
services:
app:
build: .
image: forbidden-stars:test
container_name: forbidden-stars-test
restart: "no"
init: true
env_file:
- .env # единый .env (тот же, что у dev/prod); секреты не в git
environment:
# Окружение test: прод-клон, но отличимый от прода (см. config.is_test).
# Форсим здесь, чтобы значение не зависело от APP_ENV внутри .env.
APP_ENV: test
ports:
- "8080:8000"
volumes:
- db-data-test:/data # изолированные тестовые данные
- uploads-data-test:/data/uploads
healthcheck:
test:
- CMD
- python
- -c
- "import urllib.request; urllib.request.urlopen('http://localhost:8000/api/health')"
interval: 30s
timeout: 5s
retries: 3
start_period: 40s
mem_limit: 512m
volumes:
db-data-test:
uploads-data-test: