Files
History_Api/docker-compose.yml
AzenKain d3f128b284
All checks were successful
Build and Release / release (push) Successful in 49s
UPDATE: Auth module, User module
2026-03-30 00:33:52 +07:00

90 lines
2.0 KiB
YAML

services:
db:
image: postgis/postgis:18-3.6
container_name: history_db
restart: unless-stopped
env_file:
- ./assets/resources/.env
environment:
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
- POSTGRES_DB=${POSTGRES_DB}
- PGDATA=/var/lib/postgresql/data
volumes:
- pg_data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}"]
interval: 5s
timeout: 5s
retries: 5
networks:
- history-api-project
cache:
image: redis:8.6.2-alpine
container_name: history_redis
restart: unless-stopped
networks:
- history-api-project
migrate:
build:
context: .
dockerfile_inline: |
FROM migrate/migrate
COPY db/migrations /migrations
container_name: history_migrate
depends_on:
db:
condition: service_healthy
env_file:
- ./assets/resources/.env
entrypoint:
- sh
- -c
- |
DB_URL="postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db:5432/${POSTGRES_DB}?sslmode=disable"
echo "Running migrations..."
/migrate -path /migrations -database "$$DB_URL" up
networks:
- history-api-project
app:
build: .
container_name: history_app
restart: unless-stopped
depends_on:
migrate:
condition: service_completed_successfully
db:
condition: service_healthy
cache:
condition: service_started
env_file:
- ./assets/resources/.env
ports:
- "3344:3344"
networks:
- history-api-project
worker:
build: .
container_name: history_worker
restart: unless-stopped
depends_on:
db:
condition: service_healthy
cache:
condition: service_started
env_file:
- ./assets/resources/.env
command: ["./email-worker"]
networks:
- history-api-project
volumes:
pg_data:
networks:
history-api-project: