This repository has been archived on 2026-01-02. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
cover-letter-templater/production.yml
2025-07-13 21:37:56 +03:00

61 lines
1.5 KiB
YAML

services:
backend:
build:
context: ./backend
dockerfile: ../Dockerfile.backend
target: prod # Development mode with hot reload
restart: unless-stopped
container_name: cover-letter-backend
env_file:
- .env
environment:
# - GIN_MODE=release # For production
- GIN_MODE=release
# - POSTGRES_DB=postgresql://username:password@host:port/database_name
- POSTGRES_DB=postgresql://postgres:postgres@db:5432/cover-letter
# - Environment=prod # For production
- Environment=prod
networks:
- cover-letter-network
depends_on:
db: # Wait for database to be ready (Pass healthcheck)
condition: service_healthy
frontend:
build:
context: .
dockerfile: Dockerfile.frontend
target: prod # Development stage
restart: unless-stopped
container_name: cover-letter-frontend
ports:
- 80:8080
networks:
- cover-letter-network
db:
image: postgres:13.21-alpine3.22
restart: unless-stopped
container_name: cover-letter-db
networks:
- cover-letter-network
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
# - POSTGRES_HOST_AUTH_METHOD=trust # No password needed
- POSTGRES_DB=cover-letter
ports:
- 5432:5432
volumes:
- ./data/db:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
interval: 2s
timeout: 2s
retries: 5
networks:
cover-letter-network:
driver: bridge