70 lines
1.9 KiB
YAML
70 lines
1.9 KiB
YAML
version: "3.7"
|
|
|
|
services:
|
|
npm_registry:
|
|
image: verdaccio/verdaccio
|
|
environment:
|
|
- VERDACCIO_PROTOCOL=http
|
|
- VERDACCIO_PUBLIC_URL=http://caddy/npm/
|
|
volumes:
|
|
- ./verdaccio_conf:/verdaccio/conf
|
|
- npm_registry_data:/verdaccio/storage
|
|
|
|
pypi_server:
|
|
image: pypiserver/pypiserver:latest
|
|
platform: linux/x86_64
|
|
volumes:
|
|
- pypi_data:/data/packages
|
|
command: run -P . -a . /data/packages
|
|
|
|
caddy:
|
|
image: caddy:2.5.2-alpine
|
|
volumes:
|
|
- ./Caddyfile:/etc/caddy/Caddyfile
|
|
- ./certs:/certs
|
|
- ./helloworld_static:/static/
|
|
ports:
|
|
- 443:443
|
|
environment:
|
|
- BASE_URL=":443"
|
|
|
|
db:
|
|
image: postgres:14
|
|
volumes:
|
|
- db_data:/var/lib/postgresql/data
|
|
environment:
|
|
POSTGRES_PASSWORD: changeme
|
|
POSTGRES_DB: windmill
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U postgres"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
|
|
windmill_server:
|
|
image: ghcr.io/windmill-labs/windmill:main
|
|
ports:
|
|
- 8000:8000
|
|
environment:
|
|
- DATABASE_URL=postgres://postgres:changeme@db/windmill?sslmode=disable
|
|
- WORKER_TAGS=deno,go,python3,bash,flow,hub,dependency,nativets
|
|
|
|
# For DENO and REST scripts:
|
|
- NPM_CONFIG_REGISTRY=http://caddy/npm/
|
|
- DENO_CERT=/custom-certs/windmill-root.crt # this will make deno trust this RootCA for all sessions
|
|
# - DENO_TLS_CA_STORE=system # alternatively, you can use this but you'll need to manually trust the RootCA at the host level, see README.md
|
|
|
|
# For Python scripts:
|
|
- PIP_INDEX_URL=https://caddy/simple/
|
|
- PIP_INDEX_CERT=/custom-certs/windmill-root.crt # this will make pip trust this RootCA for all sessions
|
|
volumes:
|
|
- ./certs:/custom-certs
|
|
depends_on:
|
|
db:
|
|
condition: service_healthy
|
|
|
|
volumes:
|
|
npm_registry_data: null
|
|
pypi_data: null
|
|
db_data: null
|