# Развёртывание на VPS с веб-панелью: см. DOCKER.md # # Данные на хосте: MGARLBOT_DATA_DIR (по умолчанию ./data) → /data в контейнере. # Настройки из UI сохраняются в /data/.env (персистентно). # Стартовый .env с хоста монтируется как /app/.env.seed (только для первого запуска). services: mgarlbot: build: context: . dockerfile: Dockerfile args: MECE_GIT_TOKEN: ${MECE_GIT_TOKEN:-} MECE_GIT_DEPLOY_USER: ${MECE_GIT_DEPLOY_USER:-} MECE_GIT_DEPLOY_PASSWORD: ${MECE_GIT_DEPLOY_PASSWORD:-} image: mgarlbot:latest container_name: mgarlbot restart: unless-stopped env_file: - .env environment: MGARLBOT_ENV_FILE: /data/.env MGARLBOT_WEB: "true" MGARLBOT_WEB_HOST: "0.0.0.0" MGARLBOT_WEB_PORT: "8765" MEMORY_ROOT_DIR: /data/memory AUTH_STORE_PATH: /data/.mgarlbot/users.json HF_HOME: /data/huggingface TRANSFORMERS_CACHE: /data/huggingface SENTENCE_TRANSFORMERS_HOME: /data/huggingface ports: - "${MGARLBOT_WEB_PORT:-8765}:8765" volumes: - ${MGARLBOT_DATA_DIR:-./data}:/data - ./.env:/app/.env.seed:ro - /var/run/docker.sock:/var/run/docker.sock group_add: - "${DOCKER_GID:-999}" entrypoint: ["/app/docker/entrypoint.sh"] healthcheck: test: ["CMD", "curl", "-fsS", "http://127.0.0.1:8765/api/status"] interval: 30s timeout: 10s retries: 3 start_period: 120s logging: driver: json-file options: max-size: "10m" max-file: "3"