Versión portable
Configuración
Usa HolyArrs como un programa normal en Linux o Windows, sin Docker. Docker sigue siendo la forma principal de usarlo.
Antes de empezar
Enlace a Antes de empezar- Python 3, Git y Docker en el equipo de compilación.
- Una caché de módulos de Go ya llena por una compilación normal del proyecto, y las dependencias del frontend instaladas desde
app/frontend/package-lock.json. - La app web compilada y confirmada en un commit. La compilación solo usa código confirmado; los cambios sin confirmar quedan fuera.
Compilar y ejecutar
Enlace a Compilar y ejecutar-
Desde tu copia del código, compila los archivos comprimidos:
Terminal window python deploy/release/package.py --ref HEAD --version 1.0.0 --output /srv/holyarrs-archives/1.0.0 --web-node-modules app/frontend/node_modules --module-cache /home/you/go/pkg/modUsa una carpeta de salida nueva fuera de tu copia del código. Deberías ver un archivo comprimido por cada destino y un archivo
SHA256SUMS. -
Comprueba el archivo comprimido con
SHA256SUMS. -
Extráelo en una carpeta nueva. Mantén el programa y la configuración en carpetas separadas.
-
Inícialo con tu propia ruta de configuración:
Terminal window ./holyarrs -config /srv/holyarrs/config -addr :6262En Windows PowerShell:
Terminal window .\holyarrs.exe -config 'C:\HolyArrs\config' -addr ':6262' -
Abre
http://your-server:6262. Deberías ver el asistente del primer inicio. Crea la cuenta del propietario enseguida; el primer visitante se convierte en el propietario.
Opciones
Enlace a OpcionesQué usuario lo ejecuta
Enlace a Qué usuario lo ejecutaEjecuta HolyArrs con su propia cuenta, con permiso de escritura solo en la configuración y en tus archivos multimedia.
- Como root fuera de un contenedor, sin
PUIDniPGID, se detiene con “started as root outside a container” (iniciado como root fuera de un contenedor). - Con
PUIDyPGIDdefinidos, entrega la carpeta de configuración a ese usuario y pasa a usarlo. - En Windows, protege la carpeta de configuración con un permiso NTFS para esa cuenta.
Reinicios y límites
Enlace a Reinicios y límitesEl archivo comprimido no instala ningún servicio. Configura el reinicio automático y los límites estrictos de memoria en tu propio gestor de servicios (systemd, NSSM, Task Scheduler). Reiniciar desde la app y restaurar una copia de seguridad cierran el programa y esperan que se inicie otra vez.
Actualizar y volver a la versión anterior
Enlace a Actualizar y volver a la versión anterior- Comprueba el archivo comprimido nuevo antes de detener la app.
- Detén HolyArrs y copia toda la carpeta de configuración, clave maestra incluida. O haz una copia de seguridad desde la app y guarda su clave aparte.
- Extrae el programa nuevo en una carpeta distinta. Conserva el programa anterior y la copia anterior de la configuración.
- Inicia el programa nuevo con tu configuración. Deberías poder iniciar sesión, y
/healthdebería mostrar running.
Consulta Copias de seguridad.
Si no funciona
Enlace a Si no funciona| Síntoma | Causa | Solución |
|---|---|---|
| “started as root outside a container” | Se inició como root | Ejecútalo con su propio usuario, o define PUID y PGID. |
| La app se cierra después de una restauración | Una restauración prepara los datos y sale con el código 75 | Iníciala otra vez para aplicarla. Configura tu gestor de servicios para que la reinicie. |
| Las llamadas HTTPS fallan en Linux | No hay certificados de CA del sistema | Instálalos. |
| La compilación dice que la salida ya existe | Las carpetas de salida que ya existen se rechazan | Elige una carpeta nueva. |
Para expertos
Enlace a Para expertosOpciones de compilación
| Opción | Qué hace | Predeterminado |
|---|---|---|
--targets |
Subconjunto que se compila, separado por comas | linux-amd64, |
--low-resource |
Cada contenedor de compilación recibe 1 CPU, 2 GiB y 256 procesos; Go compila un paquete a la vez. El empaquetado sigue ejecutándose en el host, fuera de esos límites. | desactivado |
La compilación se ejecuta en la imagen de compilación de Go fijada por el proyecto, con la red desactivada, así que no descarga nada. La caché de módulos se monta en solo lectura. Si algún destino falla, no queda ninguna carpeta de salida. El commit se añade al número de versión y se incluye en el programa; la app y sus copias de seguridad lo indican.
Qué contiene un archivo comprimido
El programa, la licencia, los avisos de terceros, las guías, un manifiesto del código fuente y la identidad del paquete. Un archivo comprimido aparte contiene el código fuente del proyecto y las dependencias de Go; guárdalo junto a los binarios.
SHA256SUMS demuestra que los archivos coinciden. No es una firma. El mismo commit, la misma versión y las mismas entradas dan los mismos archivos comprimidos, así que puedes volver a compilar para comprobarlo.
Notas de ejecución
| Tema | Detalle |
|---|---|
| Ruta de configuración | Predeterminada: /config. Pasa siempre -config, en un disco local. |
| Objetivo de memoria | 384 MiB sin GOMEMLIMIT. Ponlo en cerca del 80 por ciento de la memoria que le das. Un objetivo, no un límite estricto. |
| Modo de poca memoria | En Linux, se activa solo con unos 2.5 GiB o menos; el objetivo baja a una cuarta parte de la memoria, entre 192 y 384 MiB. HOLYARRS_LOW_MEMORY=1 o 0 lo decide. |
| Node | No hace falta para ejecutarlo. |
| Hardlinks | Mantén las descargas y las carpetas de la Biblioteca en un solo sistema de archivos. |
Relacionado
Enlace a RelacionadoHolyArrs es gratis. Si te ahorró tiempo, dale una estrella en GitHub, patrocínalo o invítame a un café.