56 lines
1.4 KiB
YAML
56 lines
1.4 KiB
YAML
# Production deployment compose file
|
|
# Used by: dev server:init-app first run + Drone CI deploy step
|
|
# Builds from source checked out at /opt/project-hub/src on the server.
|
|
# Persistent data lives in /opt/project-hub/data + /opt/project-hub/uploads
|
|
# (those dirs are outside the git checkout so they survive redeployments).
|
|
|
|
services:
|
|
|
|
backend:
|
|
build:
|
|
context: ./backend
|
|
dockerfile: Dockerfile
|
|
image: pm-backend:latest
|
|
container_name: pm-backend
|
|
restart: unless-stopped
|
|
environment:
|
|
- PORT=4000
|
|
- NODE_ENV=production
|
|
- APP_URL=https://pm.jiosii.com
|
|
- CORS_ORIGIN=https://pm.jiosii.com
|
|
volumes:
|
|
- /opt/project-hub/data:/app/data
|
|
- /opt/project-hub/uploads:/app/uploads
|
|
networks:
|
|
- pm-network
|
|
healthcheck:
|
|
test: ["CMD", "curl", "-f", "http://localhost:4000/health"]
|
|
interval: 30s
|
|
timeout: 5s
|
|
retries: 3
|
|
start_period: 10s
|
|
|
|
frontend:
|
|
build:
|
|
context: ./frontend
|
|
dockerfile: Dockerfile
|
|
args:
|
|
- VITE_API_URL=https://pm.jiosii.com/api
|
|
image: pm-frontend:latest
|
|
container_name: pm-frontend
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- backend
|
|
networks:
|
|
- pm-network
|
|
healthcheck:
|
|
test: ["CMD", "wget", "-qO-", "http://localhost/health"]
|
|
interval: 30s
|
|
timeout: 5s
|
|
retries: 3
|
|
start_period: 10s
|
|
|
|
networks:
|
|
pm-network:
|
|
name: pm-network
|