126 lines
3.4 KiB
YAML
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:
|