services: flagsmith-migrate: image: "flagsmith/flagsmith:latest" container_name: ${CONTAINER_NAME}-migrate restart: unless-stopped entrypoint: ["/bin/sh", "-c"] command: - flagsmith migrate && touch /tmp/flagsmith-migration-complete && exec sleep infinity networks: - 1panel-network environment: DJANGO_DB_HOST: ${PANEL_DB_HOST} DJANGO_DB_PORT: ${PANEL_DB_PORT} DJANGO_DB_NAME: ${PANEL_DB_NAME} DJANGO_DB_USER: ${PANEL_DB_USER} DJANGO_DB_PASSWORD: ${PANEL_DB_USER_PASSWORD} USE_POSTGRES_FOR_ANALYTICS: "true" ENVIRONMENT: production DJANGO_ALLOWED_HOSTS: ${FLAGSMITH_ALLOWED_HOSTS} FLAGSMITH_DOMAIN: ${FLAGSMITH_DOMAIN} DJANGO_SECRET_KEY: ${DJANGO_SECRET_KEY} PREVENT_SIGNUP: ${PREVENT_SIGNUP} TASK_RUN_METHOD: TASK_PROCESSOR PROMETHEUS_ENABLED: "true" healthcheck: test: ["CMD-SHELL", "test -f /tmp/flagsmith-migration-complete"] interval: 5s timeout: 2s start_period: 20s retries: 60 security_opt: - no-new-privileges:true labels: createdBy: "Apps" flagsmith: image: "flagsmith/flagsmith:latest" container_name: ${CONTAINER_NAME} restart: unless-stopped command: ["serve"] depends_on: flagsmith-migrate: condition: service_healthy networks: - 1panel-network ports: - "${PANEL_APP_BIND_ADDRESS}:${PANEL_APP_PORT_HTTP}:8000" environment: DJANGO_DB_HOST: ${PANEL_DB_HOST} DJANGO_DB_PORT: ${PANEL_DB_PORT} DJANGO_DB_NAME: ${PANEL_DB_NAME} DJANGO_DB_USER: ${PANEL_DB_USER} DJANGO_DB_PASSWORD: ${PANEL_DB_USER_PASSWORD} USE_POSTGRES_FOR_ANALYTICS: "true" ENVIRONMENT: production DJANGO_ALLOWED_HOSTS: ${FLAGSMITH_ALLOWED_HOSTS} FLAGSMITH_DOMAIN: ${FLAGSMITH_DOMAIN} DJANGO_SECRET_KEY: ${DJANGO_SECRET_KEY} PREVENT_SIGNUP: ${PREVENT_SIGNUP} TASK_RUN_METHOD: TASK_PROCESSOR PROMETHEUS_ENABLED: "true" healthcheck: test: ["CMD", "flagsmith", "healthcheck", "tcp"] interval: 10s timeout: 5s start_period: 60s retries: 6 security_opt: - no-new-privileges:true labels: createdBy: "Apps" flagsmith-task-processor: image: "flagsmith/flagsmith:latest" container_name: ${CONTAINER_NAME}-task-processor restart: unless-stopped command: ["run-task-processor"] depends_on: flagsmith-migrate: condition: service_healthy networks: - 1panel-network environment: DJANGO_DB_HOST: ${PANEL_DB_HOST} DJANGO_DB_PORT: ${PANEL_DB_PORT} DJANGO_DB_NAME: ${PANEL_DB_NAME} DJANGO_DB_USER: ${PANEL_DB_USER} DJANGO_DB_PASSWORD: ${PANEL_DB_USER_PASSWORD} USE_POSTGRES_FOR_ANALYTICS: "true" ENVIRONMENT: production DJANGO_ALLOWED_HOSTS: ${FLAGSMITH_ALLOWED_HOSTS} FLAGSMITH_DOMAIN: ${FLAGSMITH_DOMAIN} DJANGO_SECRET_KEY: ${DJANGO_SECRET_KEY} PREVENT_SIGNUP: ${PREVENT_SIGNUP} TASK_RUN_METHOD: TASK_PROCESSOR PROMETHEUS_ENABLED: "true" security_opt: - no-new-privileges:true labels: createdBy: "Apps" networks: 1panel-network: external: true