Deploy Byparr on tools-pve

This commit is contained in:
Codex
2026-10-12 22:45:03 -07:00
parent c4a2182b5e
commit a0e86bb47f
2 changed files with 51 additions and 0 deletions
+23
View File
@@ -0,0 +1,23 @@
# Byparr
Private LAN browser-fetch service on `tools-pve` for pages that reject ordinary
HTTP clients.
- API docs: `http://192.168.50.49:8191/docs`
- FlareSolverr-compatible endpoint: `POST http://192.168.50.49:8191/v1`
- Authentication: none; the port is bound only to the host LAN address
- Persistent state: none
Example:
```bash
curl -sS http://192.168.50.49:8191/v1 \
-H 'Content-Type: application/json' \
-d '{"cmd":"request.get","url":"https://example.com","maxTimeout":120000}'
```
The upstream image is pinned to an immutable `linux/amd64` digest. Browser
scratch data and cache are RAM-backed because Byparr performs frequent writes.
The local TCP healthcheck deliberately avoids Byparr's `/health` endpoint,
which opens an external page on every check.
+28
View File
@@ -0,0 +1,28 @@
services:
byparr:
image: ghcr.io/thephaseless/byparr@sha256:51a629fa3dcde0cee1a780922e1a572c4a5be0b5a0cb825db73d4e63059275ff
container_name: tools-byparr
restart: unless-stopped
shm_size: 1gb
stdin_open: true
tty: true
environment:
LOG_LEVEL: INFO
BROWSER_LOCALE: en-US
BROWSER_TIMEZONE: America/Los_Angeles
ports:
- "192.168.50.49:8191:8191"
tmpfs:
- /tmp:exec,mode=1777,size=1G
- /cache:mode=1777,size=512M
healthcheck:
test:
- CMD
- /app/.venv/bin/python
- -c
- import socket; s=socket.create_connection(('127.0.0.1',8191),5); s.close()
interval: 30s
timeout: 10s
retries: 3
start_period: 30s