168 lines
3.7 KiB
YAML
168 lines
3.7 KiB
YAML
services:
|
|
postgres:
|
|
image: postgres:17-alpine
|
|
environment:
|
|
POSTGRES_DB: ${POSTGRES_DB:-fable}
|
|
POSTGRES_USER: ${POSTGRES_USER:-fable}
|
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-fable_dev_password}
|
|
ports:
|
|
- "5432:5432"
|
|
volumes:
|
|
- postgres_data:/var/lib/postgresql/data
|
|
- ./database/migrations:/docker-entrypoint-initdb.d:ro
|
|
|
|
gateway:
|
|
build:
|
|
context: .
|
|
dockerfile: apps/gateway/Dockerfile
|
|
environment:
|
|
GATEWAY_PORT: 3000
|
|
CORS_ORIGIN: "*"
|
|
AUTH_SERVICE_URL: http://auth-service:8080
|
|
USER_SERVICE_URL: http://user-service:8080
|
|
CONTENT_SERVICE_URL: http://content-service:8080
|
|
TAXONOMY_SERVICE_URL: http://taxonomy-service:8080
|
|
SPEAKER_SERVICE_URL: http://speaker-service:8080
|
|
SUBSCRIPTION_SERVICE_URL: http://subscription-service:8080
|
|
NOTIFICATION_SERVICE_URL: http://notification-service:8080
|
|
COMMENT_SERVICE_URL: http://comment-service:8080
|
|
SEARCH_SERVICE_URL: http://search-service:8080
|
|
ANALYTICS_SERVICE_URL: http://analytics-service:8080
|
|
AUDIT_SERVICE_URL: http://audit-service:8080
|
|
MEDIA_SERVICE_URL: http://media-service:8080
|
|
ports:
|
|
- "3000:3000"
|
|
depends_on:
|
|
- auth-service
|
|
- user-service
|
|
- content-service
|
|
- taxonomy-service
|
|
- speaker-service
|
|
- subscription-service
|
|
- notification-service
|
|
- comment-service
|
|
- search-service
|
|
- analytics-service
|
|
- audit-service
|
|
- media-service
|
|
|
|
web:
|
|
build:
|
|
context: .
|
|
dockerfile: apps/web/Dockerfile
|
|
ports:
|
|
- "5173:80"
|
|
depends_on:
|
|
- gateway
|
|
|
|
auth-service:
|
|
build:
|
|
context: .
|
|
dockerfile: infra/docker/go-service.Dockerfile
|
|
args:
|
|
SERVICE: auth
|
|
environment:
|
|
PORT: 8080
|
|
|
|
user-service:
|
|
build:
|
|
context: .
|
|
dockerfile: infra/docker/go-service.Dockerfile
|
|
args:
|
|
SERVICE: user
|
|
environment:
|
|
PORT: 8080
|
|
|
|
content-service:
|
|
build:
|
|
context: .
|
|
dockerfile: infra/docker/go-service.Dockerfile
|
|
args:
|
|
SERVICE: content
|
|
environment:
|
|
PORT: 8080
|
|
|
|
taxonomy-service:
|
|
build:
|
|
context: .
|
|
dockerfile: infra/docker/go-service.Dockerfile
|
|
args:
|
|
SERVICE: taxonomy
|
|
environment:
|
|
PORT: 8080
|
|
|
|
speaker-service:
|
|
build:
|
|
context: .
|
|
dockerfile: infra/docker/go-service.Dockerfile
|
|
args:
|
|
SERVICE: speaker
|
|
environment:
|
|
PORT: 8080
|
|
|
|
subscription-service:
|
|
build:
|
|
context: .
|
|
dockerfile: infra/docker/go-service.Dockerfile
|
|
args:
|
|
SERVICE: subscription
|
|
environment:
|
|
PORT: 8080
|
|
|
|
notification-service:
|
|
build:
|
|
context: .
|
|
dockerfile: infra/docker/go-service.Dockerfile
|
|
args:
|
|
SERVICE: notification
|
|
environment:
|
|
PORT: 8080
|
|
|
|
comment-service:
|
|
build:
|
|
context: .
|
|
dockerfile: infra/docker/go-service.Dockerfile
|
|
args:
|
|
SERVICE: comment
|
|
environment:
|
|
PORT: 8080
|
|
|
|
search-service:
|
|
build:
|
|
context: .
|
|
dockerfile: infra/docker/go-service.Dockerfile
|
|
args:
|
|
SERVICE: search
|
|
environment:
|
|
PORT: 8080
|
|
|
|
analytics-service:
|
|
build:
|
|
context: .
|
|
dockerfile: infra/docker/go-service.Dockerfile
|
|
args:
|
|
SERVICE: analytics
|
|
environment:
|
|
PORT: 8080
|
|
|
|
audit-service:
|
|
build:
|
|
context: .
|
|
dockerfile: infra/docker/go-service.Dockerfile
|
|
args:
|
|
SERVICE: audit
|
|
environment:
|
|
PORT: 8080
|
|
|
|
media-service:
|
|
build:
|
|
context: .
|
|
dockerfile: infra/docker/go-service.Dockerfile
|
|
args:
|
|
SERVICE: media
|
|
environment:
|
|
PORT: 8080
|
|
|
|
volumes:
|
|
postgres_data:
|