Files
bookhoard/docker-compose.yml
T
john-okeefe 08e80ae84b refactor: reorganize project structure and update configurations
- Move migrations/ to database/schema/ for clarity on database schema definitions
- Move sqlc.yaml to internal/database/ to group with database code
- Move static/ to cmd/server/static/ to co-locate with server
- Update all configuration files and documentation
- Follow Go project conventions for better organization
2026-01-24 23:40:31 -05:00

53 lines
1.1 KiB
YAML

version: "3.8"
services:
db:
image: postgres:15-alpine
container_name: bookmann_db
environment:
POSTGRES_DB: ebookdb
POSTGRES_USER: postgres
POSTGRES_PASSWORD: ${DBPASS}
volumes:
- postgres_data:/var/lib/postgresql/data
- ./database/schema:/docker-entrypoint-initdb.d
ports:
- "5432:5432"
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
interval: 5s
timeout: 5s
retries: 5
env_file:
- .env
app:
build:
context: .
dockerfile: ./Dockerfile
container_name: bookmann
environment:
DATABASE_HOST: db
DATABASE_PORT: 5432
DATABASE_USER: postgres
DATABASE_PASSWORD: ${DBPASS}
DATABASE_NAME: ebookdb
JWT_SECRET: ${JWT_SECRET}
SERVER_PORT: 8765
ports:
- "8765:8765"
depends_on:
db:
condition: service_healthy
volumes:
- ./uploads:/app/uploads
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8765/"]
interval: 30s
timeout: 10s
retries: 3
env_file:
- .env
volumes:
postgres_data: