When running ghcr.io/imputnet/yt-session-generator:webserver inside Docker (in turn inside an unprivileged Proxmox LXC, but the same likely applies in any rootless/sandboxed environment), the internal Chromium instance fails to start, and /get_pot returns 404 indefinitely.
Logs
[INFO] internally launching GUI (X11 environment)
[INFO] starting Xvfb
[INFO] launching chromium instance
[extractor] [INFO] update started
[extractor] [WARNING] update failed: timeout waiting for outgoing API request
Failed to connect to browser
---------------------
One of the causes could be when you are running as root.
In that case you need to pass no_sandbox=True
---------------------
The container runs as root by design (per README), and the launcher (pyppeteer/nodriver) does not pass no_sandbox=True, so Chromium's sandbox refuses to start.
Reproduce
- Pull
ghcr.io/imputnet/yt-session-generator:webserver
- Run inside Docker inside an unprivileged Proxmox LXC (PVE 8.x, Debian 13, Docker 29.4.3,
nesting=1, keyctl=1, no extra capabilities)
docker logs yt-session-generator shows the messages above
- Downstream effect on cobalt:
POST /get_pot returns 404 Not Found, which causes cobalt to log Failed loading poToken & visitor_data every 5 minutes and fail YouTube tunnels with empty payloads.
Environment
- Image:
ghcr.io/imputnet/yt-session-generator:webserver
- Embedded Chromium: 124.0.6367.78 (Alpine)
- Host: Proxmox VE, unprivileged LXC, Debian 13 (trixie)
- Docker: 29.4.3
- cobalt:
ghcr.io/imputnet/cobalt:11 (v11.7.1)
Suggested fix
Pass no_sandbox=True to the browser launch arguments (or equivalent --no-sandbox Chromium flag) — since the container is intentionally rooted, sandbox cannot work anyway.
When running
ghcr.io/imputnet/yt-session-generator:webserverinside Docker (in turn inside an unprivileged Proxmox LXC, but the same likely applies in any rootless/sandboxed environment), the internal Chromium instance fails to start, and/get_potreturns 404 indefinitely.Logs
The container runs as root by design (per README), and the launcher (pyppeteer/nodriver) does not pass
no_sandbox=True, so Chromium's sandbox refuses to start.Reproduce
ghcr.io/imputnet/yt-session-generator:webservernesting=1, keyctl=1, no extra capabilities)docker logs yt-session-generatorshows the messages abovePOST /get_potreturns404 Not Found, which causes cobalt to logFailed loading poToken & visitor_dataevery 5 minutes and fail YouTube tunnels with empty payloads.Environment
ghcr.io/imputnet/yt-session-generator:webserverghcr.io/imputnet/cobalt:11(v11.7.1)Suggested fix
Pass
no_sandbox=Trueto the browser launch arguments (or equivalent--no-sandboxChromium flag) — since the container is intentionally rooted, sandbox cannot work anyway.