diff --git a/reactive-resume/docker-compose.yml b/reactive-resume/docker-compose.yml new file mode 100644 index 0000000..c5ab77e --- /dev/null +++ b/reactive-resume/docker-compose.yml @@ -0,0 +1,57 @@ +services: + postgres: + image: postgres:latest + restart: unless-stopped + environment: + POSTGRES_DB: postgres + POSTGRES_USER: postgres + POSTGRES_PASSWORD: postgres + volumes: + - postgres_data:/var/lib/postgresql + healthcheck: + test: ["CMD-SHELL", "pg_isready -U postgres -d postgres"] + interval: 10s + timeout: 5s + retries: 10 + + printer: + image: ghcr.io/browserless/chromium:latest + restart: unless-stopped + ports: + - "4000:3000" + environment: + - HEALTH=true + - CONCURRENT=20 + - QUEUED=10 + # Optional: Set a token for authentication + # - TOKEN=your-secret-token + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:3000/pressure?token=your-secret-token"] + interval: 10s + timeout: 5s + retries: 10 + + reactive-resume: + image: amruthpillai/reactive-resume:latest + # image: ghcr.io/amruthpillai/reactive-resume:latest + restart: unless-stopped + ports: + - "3000:3000" + env_file: + - .env + volumes: + # Used when S3 is not configured; keeps uploads persistent + - ./data:/app/data + depends_on: + postgres: + condition: service_healthy + printer: + condition: service_healthy + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:3000/api/health"] + interval: 30s + timeout: 10s + retries: 3 + +volumes: + postgres_data: \ No newline at end of file