mirror of
https://github.com/Haxxnet/Compose-Examples.git
synced 2026-02-14 16:54:24 +01:00
62 lines
1.8 KiB
YAML
62 lines
1.8 KiB
YAML
services:
|
|
|
|
excalidraw:
|
|
image: excalidraw/excalidraw:latest
|
|
container_name: excalidraw
|
|
ports:
|
|
- 8888:80 # web-ui for drawing
|
|
expose:
|
|
- 80
|
|
restart: unless-stopped
|
|
entrypoint: /bin/sh
|
|
command:
|
|
- -c
|
|
- |
|
|
echo "Replacing WebSocket URL with: $$VITE_APP_WS_SERVER_URL"
|
|
find /usr/share/nginx/html/assets -type f -name "*.js" -exec sed -i 's|https://oss-collab\.excalidraw\.com|'$$VITE_APP_WS_SERVER_URL'|g' {} +
|
|
echo "Starting nginx..."
|
|
nginx -g 'daemon off;'
|
|
stdin_open: true
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:80/ >/dev/null 2>&1 || exit 1"]
|
|
interval: 30s
|
|
timeout: 5s
|
|
retries: 3
|
|
start_period: 20s
|
|
environment:
|
|
- NODE_ENV=production
|
|
- VITE_APP_WS_SERVER_URL=https://draw2gether.example.com # define your custom url for selfhosted excalidraw-room below
|
|
#networks:
|
|
# - proxy
|
|
#labels:
|
|
# - traefik.enable=true
|
|
# - traefik.http.routers.excalidraw.rule=Host(`draw.example.com`)
|
|
# - traefik.http.services.excalidraw.loadbalancer.server.port=80
|
|
# - traefik.docker.network=proxy
|
|
|
|
excalidraw-room:
|
|
image: excalidraw/excalidraw-room:latest
|
|
container_name: excalidraw-room
|
|
ports:
|
|
- 8889:80 # web-socket for collaboration
|
|
expose:
|
|
- 80
|
|
restart: unless-stopped
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:80/ >/dev/null 2>&1 || exit 1"]
|
|
interval: 30s
|
|
timeout: 5s
|
|
retries: 3
|
|
start_period: 20s
|
|
#networks:
|
|
# - proxy
|
|
#labels:
|
|
# - traefik.enable=true
|
|
# - traefik.http.routers.excalidraw-collab.rule=Host(`draw2gether.example.com`)
|
|
# - traefik.http.services.excalidraw-collab.loadbalancer.server.port=80
|
|
# - traefik.docker.network=proxy
|
|
|
|
#networks:
|
|
# proxy:
|
|
# external: true
|