chore: expose status port in Docker/compose and document http_addr

EXPOSE 8080 in the image, publish 8080 in compose, document http_addr in the
example config, and add the CPU/memory limits so a long encode can't starve
the host.
This commit is contained in:
Esa Kataja
2026-06-21 17:43:13 +03:00
parent aa8a341069
commit d38c3ad568
4 changed files with 17 additions and 0 deletions
+2
View File
@@ -1,5 +1,6 @@
videnc-vibe videnc-vibe
*.mkv *.mkv
*.mp4
*.wav *.wav
*.opus *.opus
*.log *.log
@@ -10,5 +11,6 @@ logs.db
/originals /originals
/failed /failed
/work /work
/data
.git .git
MANUAL.html MANUAL.html
+1
View File
@@ -14,4 +14,5 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
COPY --from=build /videnc-vibe /usr/local/bin/videnc-vibe COPY --from=build /videnc-vibe /usr/local/bin/videnc-vibe
# logs.db + log files land in the working dir — make it the mounted /data so they persist. # logs.db + log files land in the working dir — make it the mounted /data so they persist.
WORKDIR /data WORKDIR /data
EXPOSE 8080
ENTRYPOINT ["videnc-vibe", "-c", "/config/config.yaml"] ENTRYPOINT ["videnc-vibe", "-c", "/config/config.yaml"]
+4
View File
@@ -1,5 +1,9 @@
omdb_api_key: "YOUR_API_KEY_HERE" omdb_api_key: "YOUR_API_KEY_HERE"
# Status server listen address. Omit for the default ":8080"; set to "" to disable.
# GET /status returns live encode progress, the input queue, and recent events.
http_addr: ":8080"
encoding: encoding:
dvd: dvd:
crf: 30 crf: 30
+10
View File
@@ -3,6 +3,16 @@ services:
build: . build: .
container_name: videnc-vibe container_name: videnc-vibe
restart: unless-stopped restart: unless-stopped
# Cap CPU/RAM so a long SVT-AV1 encode can't starve the host. Tune to taste.
# `podman compose` honors deploy.resources; `podman-compose` (python) wants
# the short keys instead — cpus: 4.0 / mem_limit: 4g / cpuset: "0-3".
deploy:
resources:
limits:
cpus: "8.0"
memory: 4g
ports:
- "8080:8080" # status server: GET http://host:8080/status (needs http_addr: ":8080" in config)
volumes: volumes:
- ./data/config.yaml:/config/config.yaml:ro # your config — paths inside must point at /data/* - ./data/config.yaml:/config/config.yaml:ro # your config — paths inside must point at /data/*
- ./data/media:/data # holds input/ output/ originals/ failed/ work/ + logs - ./data/media:/data # holds input/ output/ originals/ failed/ work/ + logs