api-client/docker-compose.yml
2026-05-06 15:06:35 +02:00

126 lines
3.4 KiB
YAML

services:
hoppscotch-db:
image: postgres:15
user: postgres
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-testpass}
POSTGRES_DB: ${POSTGRES_DB:-hoppscotch}
volumes:
- hoppscotch-db:/var/lib/postgresql/data
healthcheck:
test:
[
"CMD-SHELL",
"sh -c 'pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}'",
]
interval: 5s
timeout: 5s
retries: 10
hoppscotch-dev-deps:
build:
dockerfile: prod.Dockerfile
context: .
target: base_builder
env_file:
- ./.env
environment:
DATABASE_URL: postgresql://postgres:${POSTGRES_PASSWORD:-testpass}@hoppscotch-db:5432/${POSTGRES_DB:-hoppscotch}
working_dir: /usr/src/app
command: ["pnpm", "install", "-f", "--prefer-offline"]
volumes:
- .:/usr/src/app
- hoppscotch-node-modules:/usr/src/app/node_modules
- hoppscotch-pnpm-store:/root/.local/share/pnpm/store/v10
hoppscotch-backend:
container_name: hoppscotch-backend-dev
restart: unless-stopped
build:
dockerfile: prod.Dockerfile
context: .
target: base_builder
env_file:
- ./.env
environment:
DATABASE_URL: postgresql://postgres:${POSTGRES_PASSWORD:-testpass}@hoppscotch-db:5432/${POSTGRES_DB:-hoppscotch}
depends_on:
hoppscotch-db:
condition: service_healthy
hoppscotch-dev-deps:
condition: service_completed_successfully
working_dir: /usr/src/app/packages/hoppscotch-backend
command:
[
"sh",
"-c",
"pnpm exec prisma migrate deploy && pnpm run start:dev",
]
volumes:
- .:/usr/src/app
- hoppscotch-node-modules:/usr/src/app/node_modules
- hoppscotch-pnpm-store:/root/.local/share/pnpm/store/v10
ports:
- "3170:3170"
hoppscotch-app:
container_name: hoppscotch-app-dev
restart: unless-stopped
build:
dockerfile: prod.Dockerfile
context: .
target: base_builder
env_file:
- ./.env
depends_on:
hoppscotch-dev-deps:
condition: service_completed_successfully
hoppscotch-backend:
condition: service_started
working_dir: /usr/src/app/packages/hoppscotch-selfhost-web
command:
[
"sh",
"-c",
"pnpm run dev:gql-codegen & pnpm exec vite --host 0.0.0.0 --port 3000",
]
volumes:
- .:/usr/src/app
- hoppscotch-node-modules:/usr/src/app/node_modules
- hoppscotch-pnpm-store:/root/.local/share/pnpm/store/v10
ports:
- "3000:3000"
hoppscotch-sh-admin:
container_name: hoppscotch-sh-admin-dev
restart: unless-stopped
build:
dockerfile: prod.Dockerfile
context: .
target: base_builder
env_file:
- ./.env
depends_on:
hoppscotch-dev-deps:
condition: service_completed_successfully
hoppscotch-backend:
condition: service_started
working_dir: /usr/src/app/packages/hoppscotch-sh-admin
command:
[
"sh",
"-c",
"pnpm run dev:gql-codegen & pnpm exec vite --host 0.0.0.0 --port 3100",
]
volumes:
- .:/usr/src/app
- hoppscotch-node-modules:/usr/src/app/node_modules
- hoppscotch-pnpm-store:/root/.local/share/pnpm/store/v10
ports:
- "3100:3100"
volumes:
hoppscotch-db:
hoppscotch-node-modules:
hoppscotch-pnpm-store: