mirror of
https://github.com/retspen/webvirtcloud
synced 2026-11-08 19:26:48 +00:00
The console pages connect to /novncd/ on the address, scheme and port the page itself was loaded from; nginx proxies it to novncd, which listens on the loopback only. There is nothing to configure: the console works on HTTPS (wss), behind another proxy and on any published port. Before, the page connected to WS_PUBLIC_HOST/PORT/PATH, port 6080 by default: straight to novncd, past nginx and without TLS, so an HTTPS panel and a Docker container published on another port had no console until the public port was set by hand, and novncd listened on every interface. Gone: WS_PUBLIC_PORT, WS_PUBLIC_HOST, WS_PUBLIC_PATH and WS_CERT, the installer's two public console questions and its 6080 firewall rule, the Docker image's WS_PUBLIC_PORT and its init script lines, the manual install's firewall rule for 6080 and nginx's unused /websockify location. WS_HOST defaults to 127.0.0.1. A VM with a QEMU websocket port is still reached on that port of the panel's host name (left for a separate decision).
39 lines
1.5 KiB
YAML
39 lines
1.5 KiB
YAML
services:
|
|
webvirtcloud:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
image: webvirtcloud:latest
|
|
container_name: webvirtcloud
|
|
restart: unless-stopped
|
|
# above my_init's 80 s, which is above the worker's 60 s drain
|
|
stop_grace_period: 95s
|
|
ports:
|
|
- "80:80"
|
|
environment:
|
|
# Optional: custom Django secret key. If unset, automatically generated at first launch.
|
|
# - SECRET_KEY=your-custom-secret-key-here
|
|
# Optional: comma-separated trusted CSRF origins (e.g. http://wvc.example.com,https://wvc.example.com)
|
|
# - CSRF_TRUSTED_ORIGINS=http://localhost,http://127.0.0.1
|
|
# Optional: PostgreSQL instead of the bundled sqlite (also WEBVIRTCLOUD_DB_PORT/_NAME/_USER)
|
|
# - WEBVIRTCLOUD_DB_HOST=db.example.com
|
|
# - WEBVIRTCLOUD_DB_PASSWORD=change-me
|
|
# Optional: SMTP for e-mail OTP (also EMAIL_PORT, EMAIL_USE_TLS=0/1)
|
|
# - EMAIL_HOST=smtp.example.com
|
|
# - EMAIL_HOST_USER=webvirtcloud@example.com
|
|
# - EMAIL_HOST_PASSWORD=change-me
|
|
# Host names/IPs the panel is reached by (comma-separated; "*" accepts any).
|
|
# Without it only localhost works. Set it in docker-compose.override.yml.
|
|
- ALLOWED_HOSTS=localhost
|
|
- TZ=UTC
|
|
volumes:
|
|
# Persistent SQLite database and runtime data
|
|
- webvirtcloud-data:/srv/webvirtcloud/data
|
|
# Persistent SSH keys for compute node authentication
|
|
- webvirtcloud-ssh:/var/www/.ssh
|
|
|
|
volumes:
|
|
webvirtcloud-data:
|
|
driver: local
|
|
webvirtcloud-ssh:
|
|
driver: local
|