Saltar al contingut

Versió portàtil

Configuració

Fes funcionar HolyArrs com un programa normal a Linux o Windows, sense Docker. Docker continua sent la manera principal de fer-lo funcionar.

  • Python 3, Git i Docker a l’equip on crees la versió.
  • Una memòria cau de mòduls de Go plena d’una compilació normal del projecte, i les dependències del frontend instal·lades des de app/frontend/package-lock.json.
  • L’app web ja compilada i confirmada al repositori (commit). La compilació només fa servir el codi font confirmat; els canvis sense confirmar queden fora.

Crea-la i fes-la funcionar

Enllaç a Crea-la i fes-la funcionar
  1. Des de la còpia del repositori, crea els fitxers comprimits:

    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/mod

    Fes servir una carpeta de sortida nova fora de la còpia del repositori. Hauries de veure un fitxer comprimit per cada destinació i un fitxer SHA256SUMS.

  2. Comprova el fitxer comprimit amb SHA256SUMS.

  3. Extreu-lo en una carpeta nova. Mantén el programa i la configuració en carpetes separades.

  4. Inicia’l amb la teva pròpia ruta de configuració:

    Terminal window
    ./holyarrs -config /srv/holyarrs/config -addr :6262

    A Windows PowerShell:

    Terminal window
    .\holyarrs.exe -config 'C:\HolyArrs\config' -addr ':6262'
  5. Obre http://your-server:6262. Hauries de veure l’assistent del primer inici. Crea el compte de propietari de seguida; el primer visitant passa a ser el propietari.

Quin usuari el fa funcionar

Enllaç a Quin usuari el fa funcionar

Fes funcionar HolyArrs amb el seu propi compte, amb permís d’escriptura només a la configuració i als teus mitjans.

  • Com a root fora d’un contenidor, sense PUID i PGID, s’atura amb “started as root outside a container”.
  • Amb PUID i PGID definits, passa la carpeta de configuració a aquest usuari i canvia a ell.
  • A Windows, protegeix la carpeta de configuració amb un permís NTFS per a aquest compte.

El fitxer comprimit no instal·la cap servei. Configura el reinici automàtic i els límits estrictes de memòria al teu propi gestor de serveis (systemd, NSSM, Task Scheduler). Reiniciar des de l’app i restaurar una còpia de seguretat tanquen el programa i esperen que el tornin a iniciar.

Actualitza i torna a la versió anterior

Enllaç a Actualitza i torna a la versió anterior
  1. Comprova el fitxer comprimit nou abans d’aturar l’app.
  2. Atura HolyArrs i copia tota la carpeta de configuració, clau mestra inclosa. O fes una còpia de seguretat dins de l’app i guarda’n la clau per separat.
  3. Extreu el programa nou en una carpeta diferent. Conserva el programa antic i la còpia antiga de la configuració.
  4. Inicia el programa nou amb la teva configuració. Hauries de poder iniciar la sessió, i /health hauria de mostrar running.

Consulta Còpies de seguretat.

Símptoma Causa Solució
“started as root outside a container” S’ha iniciat com a root Fes-lo funcionar amb el seu propi usuari, o defineix PUID i PGID.
L’app es tanca després d’una restauració Una restauració prepara les dades i es tanca amb el codi 75 Torna-la a iniciar perquè les apliqui. Configura el teu gestor de serveis perquè la reiniciï.
Les crides HTTPS fallen a Linux No hi ha certificats CA del sistema Instal·la’ls.
La compilació diu que la sortida ja existeix Les carpetes de sortida existents es rebutgen Tria una carpeta nova.
Opcions de compilació
Opció Què fa Per defecte
--targets Subconjunt separat per comes que es compila linux-amd64,linux-arm64,linux-armv7,windows-amd64
--low-resource Cada contenidor de compilació rep 1 CPU, 2 GiB i 256 processos; Go compila un paquet cada vegada. L’empaquetatge continua fent-se al host, fora d’aquests límits. desactivat

La compilació s’executa a la imatge de compilació de Go fixada del projecte, sense xarxa, així que no baixa res. La memòria cau de mòduls es munta en mode només lectura. Si alguna destinació falla, no queda cap carpeta de sortida. El commit s’afegeix al número de versió i s’inclou al programa; l’app i les seves còpies de seguretat el mostren.

Què conté un fitxer comprimit

El programa, la llicència, els avisos de tercers, les guies, un manifest del codi font i la identitat del paquet. Un fitxer comprimit de codi font a part conté el codi font del projecte i les dependències de Go; guarda’l al costat dels binaris.

SHA256SUMS prova que els fitxers coincideixen. No és una signatura. El mateix commit, versió i entrades donen els mateixos fitxers comprimits, així que pots tornar a compilar per comprovar-ho.

Notes d'execució
Tema Detall
Ruta de configuració Per defecte /config. Passa sempre -config, en un disc local.
Objectiu de memòria 384 MiB sense GOMEMLIMIT. Posa-hi un 80 per cent de la memòria que li donis. És un objectiu, no un límit estricte.
Mode de poca memòria A Linux, s’activa sol amb uns 2.5 GiB o menys; l’objectiu baixa a una quarta part de la memòria, entre 192 i 384 MiB. HOLYARRS_LOW_MEMORY=1 o 0 ho decideix.
Node No cal per fer-lo funcionar.
Hardlinks Mantén les baixades i les carpetes de la Biblioteca en un sol sistema de fitxers.

HolyArrs és gratis. Si t'ha estalviat temps, dona-li una estrella a GitHub, patrocina'l o convida'm a un cafè.