33 lines
1.0 KiB
YAML
Executable File
33 lines
1.0 KiB
YAML
Executable File
services:
|
|
admin:
|
|
build:
|
|
context: .
|
|
dockerfile: ./Dockerfile
|
|
container_name: tg_shop_admin
|
|
restart: always
|
|
ports:
|
|
- "3000:3000"
|
|
environment:
|
|
# === Обязательные ===
|
|
- DATABASE_URL=file:/app/db/custom.db
|
|
- ADMIN_SECRET=${ADMIN_SECRET:-changeme}
|
|
- SUPER_ADMIN_SECRET=${SUPER_ADMIN_SECRET:-changeme_super}
|
|
# === ИИ-чатбот (опционально) ===
|
|
- CHATBOT_API_KEY=${CHATBOT_API_KEY:-}
|
|
- CHATBOT_API_ENDPOINT=${CHATBOT_API_ENDPOINT:-https://api.openai.com/v1}
|
|
volumes:
|
|
# Персистентная база данных
|
|
- ./db:/app/db
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
memory: 512M
|
|
reservations:
|
|
memory: 256M
|
|
healthcheck:
|
|
test: ["CMD", "node", "-e", "const http = require('http'); http.get('http://localhost:3000/api/auth/session', r => { process.exit(r.statusCode === 401 ? 0 : 1) }).on('error', () => process.exit(1))"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 15s
|