# =================== # FFR Production Services # =================== services: app: build: context: ../.. dockerfile: Dockerfile image: codeberg.org/lvl0/ffr:latest container_name: ffr_app restart: unless-stopped ports: - "8000:8000" environment: APP_NAME: "${APP_NAME:-FFR}" APP_KEY: "${APP_KEY}" APP_URL: "${APP_URL}" DB_HOST: db DB_PORT: 3306 DB_DATABASE: "${DB_DATABASE:-ffr}" DB_USERNAME: "${DB_USERNAME:-ffr}" DB_PASSWORD: "${DB_PASSWORD}" REDIS_HOST: redis REDIS_PORT: 6379 depends_on: db: condition: service_healthy redis: condition: service_started networks: - ffr-network db: image: mariadb:11 container_name: ffr_db restart: unless-stopped environment: MYSQL_DATABASE: "${DB_DATABASE:-ffr}" MYSQL_USER: "${DB_USERNAME:-ffr}" MYSQL_PASSWORD: "${DB_PASSWORD}" MYSQL_ROOT_PASSWORD: "${DB_ROOT_PASSWORD}" volumes: - db_data:/var/lib/mysql healthcheck: test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"] interval: 10s timeout: 5s retries: 5 start_period: 30s networks: - ffr-network redis: image: redis:7-alpine container_name: ffr_redis restart: unless-stopped volumes: - redis_data:/data networks: - ffr-network networks: ffr-network: driver: bridge volumes: db_data: redis_data: