Instalación con Docker
Despliega VidArch con los archivos Compose del repositorio, volúmenes persistentes y endurecimiento.
El repositorio incluye dos archivos Compose. No son intercambiables.
| Archivo | Origen de la imagen | Cuándo usarlo |
|---|---|---|
docker-compose.yml | build local etiquetado vidarch:local | validar o ejecutar el checkout actual |
docker-compose.example.yml | ${VIDARCH_IMAGE:-ghcr.io/lucas-lepajollec/vidarch:latest} | instancia homelab desde la imagen publicada |
Ambos enlazan 127.0.0.1:2499:2499 por defecto, montan ./data y ./downloads, usan una raíz de solo lectura, eliminan todas las capacidades y comprueban http://127.0.0.1:2499/api/health dentro del contenedor.
Homelab desde la imagen publicada
Copia docker-compose.example.yml a un directorio dedicado como docker-compose.yml, o parte de este equivalente:
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: 20sCrea un .env al lado:
AUTH_PASSWORD=choose-a-long-unique-passphraseFija una imagen recuperable antes de depender de la instancia:
export VIDARCH_IMAGE=ghcr.io/lucas-lepajollec/vidarch:sha-<full-commit>
docker compose up -dAbre http://127.0.0.1:2499 y sigue el primer inicio. Define VIDARCH_BIND_ADDRESS=0.0.0.0 solo después de configurar una contraseña, y únicamente en una LAN de confianza.
Compilar el checkout actual
docker compose up -d --buildEse Compose construye vidarch:local. No ejecutes docker compose pull contra él.
Nunca ejecutes docker compose down -v como parte de una parada normal. Respalda data/ y downloads/ antes de sustituir una imagen en ejecución.