name: egbim-feedback-demo services: web: build: context: .. dockerfile: docker/web.dockerfile args: NPM_REGISTRY: ${NPM_REGISTRY:-https://registry.npmmirror.com} # Browser requests stay same-origin. Next.js proxies them server-side. APP_NEXT_PUBLIC_API_BASE_URL: '' APP_NEXT_PUBLIC_FEEDBACK_ONLY: 'true' environment: NODE_ENV: production HOSTNAME: 0.0.0.0 # Keep browser requests on 10.13.10.4:8864 to avoid CORS. NEXT_PUBLIC_API_BASE_URL: '' NEXT_PUBLIC_FEEDBACK_ONLY: 'true' # Existing management console API. SUPPORT_CONSOLE_API_BASE_URL: ${SUPPORT_CONSOLE_API_BASE_URL:-https://feedback.hmac.kr/api/support} SSO_ISSUER: ${SSO_ISSUER:-https://sso.hmac.kr/oidc} SSO_AUTHORIZATION_ENDPOINT: ${SSO_AUTHORIZATION_ENDPOINT:-https://sso.hmac.kr/oidc/oauth2/auth} SSO_TOKEN_ENDPOINT: ${SSO_TOKEN_ENDPOINT:-https://sso.hmac.kr/oidc/oauth2/token} SSO_USERINFO_ENDPOINT: ${SSO_USERINFO_ENDPOINT:-https://sso.hmac.kr/oidc/userinfo} SSO_SCOPE: ${SSO_SCOPE:-openid profile email} # These are server-only values. Do not prefix them with NEXT_PUBLIC_ and # do not put them in the browser build. SSO_CLIENT_ID: ${SSO_CLIENT_ID:-} SSO_CLIENT_SECRET: ${SSO_CLIENT_SECRET:-} JWT_SECRET: ${JWT_SECRET:-} SUPPORT_TENANT_ID: ${SUPPORT_TENANT_ID:-} ports: - '${WEB_PORT:-8864}:3000' healthcheck: test: ['CMD-SHELL', 'wget -q -O - http://127.0.0.1:3000/api/health >/dev/null'] interval: 10s timeout: 5s retries: 12 start_period: 20s restart: unless-stopped