Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # In this Docker Compose example, it assumes that you maintain a reverse proxy externally (or chose not to).
- # The only two exposed ports here are from minio (:9000) and the app itself (:3000).
- # If these ports are changed, ensure that the env vars passed to the app are also changed accordingly.
- services:
- # Database (Postgres)
- postgres:
- image: postgres:16-alpine
- restart: unless-stopped
- volumes:
- - postgres_data:/var/lib/postgresql/data
- environment:
- POSTGRES_DB: postgres
- POSTGRES_USER: postgres
- POSTGRES_PASSWORD: postgres
- healthcheck:
- test: ["CMD-SHELL", "pg_isready -U postgres -d postgres"]
- interval: 10s
- timeout: 5s
- retries: 5
- # Storage (for image uploads)
- minio:
- image: minio/minio:latest
- restart: unless-stopped
- command: server /data
- ports:
- - "9000:9000"
- volumes:
- - minio_data:/data
- environment:
- MINIO_ROOT_USER: minioadmin
- MINIO_ROOT_PASSWORD: minioadmin
- # Chrome Browser (for printing and previews)
- chrome:
- image: ghcr.io/browserless/chromium:v2.18.0 # Upgrading to newer versions causes issues
- restart: unless-stopped
- extra_hosts:
- - "host.docker.internal:host-gateway"
- environment:
- TIMEOUT: 100000
- CONCURRENT: 10
- TOKEN: chrome_token
- EXIT_ON_HEALTH_FAILURE: "true"
- PRE_REQUEST_HEALTH_CHECK: "true"
- app:
- image: amruthpillai/reactive-resume:latest
- restart: unless-stopped
- ports:
- - "3002:3002"
- depends_on:
- - postgres
- - minio
- - chrome
- environment:
- # -- Environment Variables --
- PORT: 3002
- NODE_ENV: production
- # -- URLs --
- PUBLIC_URL: http://192.168.1.144:3002
- STORAGE_URL: http://192.168.1.144:9000/default
- # -- Printer (Chrome) --
- CHROME_TOKEN: chrome_token
- CHROME_URL: ws://localhost:3002
- # -- Database (Postgres) --
- DATABASE_URL: postgresql://postgres:postgres@postgres:5432/postgres
- # -- Auth --
- ACCESS_TOKEN_SECRET: access_token_secret
- REFRESH_TOKEN_SECRET: refresh_token_secret
- # -- Emails --
- MAIL_FROM: noreply@localhost
- # SMTP_URL: smtp://user:pass@smtp:587 # Optional
- # -- Storage (Minio) --
- STORAGE_ENDPOINT: minio
- STORAGE_PORT: 9000
- STORAGE_REGION: us-east-1 # Optional
- STORAGE_BUCKET: default
- STORAGE_ACCESS_KEY: minioadmin
- STORAGE_SECRET_KEY: minioadmin
- STORAGE_USE_SSL: "false"
- STORAGE_SKIP_BUCKET_CHECK: "false"
- # -- Crowdin (Optional) --
- # CROWDIN_PROJECT_ID:
- # CROWDIN_PERSONAL_TOKEN:
- # -- Email (Optional) --
- # DISABLE_SIGNUPS: "false"
- # DISABLE_EMAIL_AUTH: "false"
- # -- GitHub (Optional) --
- # GITHUB_CLIENT_ID: github_client_id
- # GITHUB_CLIENT_SECRET: github_client_secret
- # GITHUB_CALLBACK_URL: http://localhost:3000/api/auth/github/callback
- # -- Google (Optional) --
- # GOOGLE_CLIENT_ID: google_client_id
- # GOOGLE_CLIENT_SECRET: google_client_secret
- # GOOGLE_CALLBACK_URL: http://localhost:3000/api/auth/google/callback
- # -- OpenID (Optional) --
- # VITE_OPENID_NAME: OpenID
- # OPENID_AUTHORIZATION_URL:
- # OPENID_CALLBACK_URL: http://localhost:3000/api/auth/openid/callback
- # OPENID_CLIENT_ID:
- # OPENID_CLIENT_SECRET:
- # OPENID_ISSUER:
- # OPENID_SCOPE: openid profile email
- # OPENID_TOKEN_URL:
- # OPENID_USER_INFO_URL:
- volumes:
- minio_data:
- postgres_data:
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement