# Compose v2 - Frontend web client

x-common-env: &common-env
  env_file:
    - ../env/.env.runtime
    - ../env/.env.version

networks:
  sendico-net:
    external: true
    name: sendico-net

services:
  sendico_frontend:
    <<: *common-env
    container_name: sendico-frontend
    restart: unless-stopped
    image: ${REGISTRY_URL}/frontend/service:${APP_V}
    pull_policy: always
    environment:
      WS_PROTOCOL: ${WS_PROTOCOL}
      WS_ENDPOINT: ${WS_ENDPOINT}
      API_PROTOCOL: ${API_PROTOCOL}
      SERVICE_HOST: ${SERVICE_HOST}
      API_ENDPOINT: ${API_ENDPOINT}
      AMPLITUDE_SECRET: ${AMPLITUDE_SECRET}
      DEFAULT_LOCALE: ${DEFAULT_LOCALE}
      DEFAULT_CURRENCY: ${DEFAULT_CURRENCY}
      CADDY_ACME_EMAIL: ${CADDY_ACME_EMAIL}
    ports:
      - "0.0.0.0:${FRONTEND_HTTP_PORT}:80"
      - "0.0.0.0:${FRONTEND_HTTPS_PORT}:443"
    healthcheck:
      test: ["CMD-SHELL","curl -sf http://localhost:80/ >/dev/null"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 30s
    networks:
      - sendico-net
