Docker-Installation
VidArch mit den Compose-Dateien des Repositories, persistenten Volumes und Härtung bereitstellen.
Das Repository liefert zwei Compose-Dateien. Sie sind nicht austauschbar.
| Datei | Image-Quelle | Wann verwenden |
|---|---|---|
docker-compose.yml | lokaler Build mit Tag vidarch:local | den aktuellen Checkout prüfen oder betreiben |
docker-compose.example.yml | ${VIDARCH_IMAGE:-ghcr.io/lucas-lepajollec/vidarch:latest} | Homelab-Instanz aus dem veröffentlichten Image |
Beide binden standardmäßig 127.0.0.1:2499:2499, mounten ./data und ./downloads, nutzen ein schreibgeschütztes Root, entfernen alle Capabilities und prüfen http://127.0.0.1:2499/api/health innerhalb des Containers.
Homelab aus dem veröffentlichten Image
Kopiere docker-compose.example.yml als docker-compose.yml in ein eigenes Verzeichnis oder starte von diesem Äquivalent:
services:
vidarch:
image: ${VIDARCH_IMAGE:-ghcr.io/lucas-lepajollec/vidarch:latest}
container_name: vidarch
restart: unless-stopped
ports:
- "${VIDARCH_BIND_ADDRESS:-127.0.0.1}:2499:2499"
environment:
PORT: 2499
NODE_ENV: production
DATA_DIR: /app/data
DOWNLOADS_DIR: /app/downloads
AUTH_PASSWORD: ${AUTH_PASSWORD:-}
volumes:
- ./data:/app/data
- ./downloads:/app/downloads
read_only: true
tmpfs:
- /tmp:size=128m,uid=1000,gid=1000,mode=1770
security_opt:
- no-new-privileges:true
cap_drop:
- ALL
init: true
healthcheck:
test: ["CMD", "curl", "--fail", "--silent", "http://127.0.0.1:2499/api/health"]
interval: 30s
timeout: 5s
retries: 3
start_period: 20sLege daneben eine .env an:
AUTH_PASSWORD=choose-a-long-unique-passphrasePinne ein wiederherstellbares Image, bevor du dich auf die Instanz verlässt:
export VIDARCH_IMAGE=ghcr.io/lucas-lepajollec/vidarch:sha-<full-commit>
docker compose up -dÖffne http://127.0.0.1:2499 und folge dem ersten Start. Setze VIDARCH_BIND_ADDRESS=0.0.0.0 erst nach dem Setzen eines Passworts und nur für ein vertrauenswürdiges LAN.
Den aktuellen Checkout bauen
docker compose up -d --buildDiese Compose-Datei baut vidarch:local. Führe dagegen kein docker compose pull aus.
Führe docker compose down -v nie als normalen Stopp aus. Sichere data/ und downloads/, bevor du ein laufendes Image ersetzt.