Files
oam/docker compositions/hoppscotch/docker-compose.yml
2025-01-12 22:39:57 +01:00

99 lines
1.9 KiB
YAML

---
name: hoppscotch
networks:
hoppscotch:
volumes:
db:
services:
db:
image: postgres:15
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: dbPassword
POSTGRES_DB: hoppscotch
healthcheck:
test: pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}
interval: 5s
timeout: 5s
retries: 10
ports:
- '5432:5432'
networks:
- hoppscotch
volumes:
- 'db:/var/lib/postgresql/data'
db_initializer:
depends_on:
db:
condition: service_healthy
image: hoppscotch/hoppscotch-backend
env_file:
- .env
command: pnpx prisma migrate deploy
networks:
- hoppscotch
backend:
depends_on:
db:
condition: service_healthy
db_initializer:
condition: service_completed_successfully
build:
dockerfile: prod.Dockerfile
context: .
target: backend
env_file:
- .env
healthcheck:
test: wget -q -O '/dev/null' 'localhost:3170'
interval: 5s
timeout: 4s
retries: 10
start_period: 5s
ports:
- '3170:3170'
- '3180:80'
networks:
- hoppscotch
restart: unless-stopped
# mailer:
# image: dockage/mailcatcher
# ports:
# - '1080:1080'
# - '1025:1025'
# networks:
# - hoppscotch
# restart: unless-stopped
frontend:
depends_on:
backend:
condition: service_healthy
build:
dockerfile: prod.Dockerfile
context: .
target: app
env_file:
- .env
ports:
- '3000:3000'
- '3080:80'
networks:
- hoppscotch
restart: unless-stopped
admin:
depends_on:
backend:
condition: service_healthy
build:
dockerfile: prod.Dockerfile
context: .
target: sh_admin
env_file:
- .env
ports:
- '80:80'
- '3100:3100'
networks:
- hoppscotch
restart: unless-stopped