Salta ai contenuti

Versione portatile

Configurazione

Esegui HolyArrs come un normale programma su Linux o Windows, senza Docker. Docker resta il modo principale per eseguirlo.

Prima di iniziare

Link a Prima di iniziare
  • Python 3, Git e Docker sul computer di compilazione.
  • Una cache dei moduli Go già riempita da una normale compilazione del progetto, e le dipendenze del frontend installate da app/frontend/package-lock.json.
  • L’app web già compilata e inclusa in un commit. La compilazione usa solo il sorgente già nei commit; le modifiche non committate restano fuori.

Compilare ed eseguire

Link a Compilare ed eseguire
  1. Dal checkout, crea gli archivi:

    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

    Usa una nuova cartella di output fuori dal checkout. Dovresti vedere un archivio per ogni destinazione e un file SHA256SUMS.

  2. Controlla l’archivio con SHA256SUMS.

  3. Estrailo in una nuova cartella. Tieni il programma e la configurazione in cartelle separate.

  4. Avvialo con il tuo percorso di configurazione:

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

    Su Windows PowerShell:

    Terminal window
    .\holyarrs.exe -config 'C:\HolyArrs\config' -addr ':6262'
  5. Apri http://your-server:6262. Dovresti vedere la procedura guidata del primo avvio. Crea subito l’account del proprietario; il primo visitatore diventa il proprietario.

Quale utente lo esegue

Link a Quale utente lo esegue

Esegui HolyArrs con un account dedicato, con accesso in scrittura solo alla configurazione e ai tuoi file multimediali.

  • Come root fuori da un container, senza PUID e PGID, si ferma con “started as root outside a container”.
  • Con PUID e PGID impostati, passa la cartella di configurazione a quell’utente e passa a lavorare con quell’account.
  • Su Windows, proteggi la cartella di configurazione con un permesso NTFS per quell’account.

Riavvii e limiti

Link a Riavvii e limiti

L’archivio non installa nessun servizio. Configura il riavvio automatico e i limiti rigidi di memoria nel tuo gestore dei servizi (systemd, NSSM, Utilità di pianificazione). Il riavvio dall’app e il ripristino di un backup escono entrambi e si aspettano di essere avviati di nuovo.

Aggiornare e tornare indietro

Link a Aggiornare e tornare indietro
  1. Controlla il nuovo archivio prima di arrestare l’app.
  2. Arresta HolyArrs e copia l’intera cartella di configurazione, chiave principale compresa. Oppure fai un backup dall’app e tieni la sua chiave a parte.
  3. Estrai il nuovo programma in una cartella diversa. Tieni il vecchio programma e la vecchia copia della configurazione.
  4. Avvia il nuovo programma sulla tua configurazione. Dovresti riuscire ad accedere, e /health dovrebbe mostrare running.

Vedi Backup.

Se non funziona

Link a Se non funziona
Sintomo Causa Soluzione
“started as root outside a container” Avviato come root Eseguilo con un utente dedicato, oppure imposta PUID e PGID.
L’app esce dopo un ripristino Un ripristino prepara i dati ed esce con il codice 75 Avviala di nuovo per applicarlo. Imposta il tuo gestore dei servizi perché la riavvii.
Le chiamate HTTPS falliscono su Linux Mancano i certificati CA di sistema Installali.
La compilazione dice che l’output esiste Le cartelle di output già esistenti vengono rifiutate Scegli una nuova cartella.
Opzioni di compilazione
Opzione Cosa fa Predefinito
--targets Sottoinsieme da compilare, separato da virgole linux-amd64,linux-arm64,linux-armv7,windows-amd64
--low-resource Ogni container di compilazione ha 1 CPU, 2 GiB e 256 processi; Go compila un pacchetto alla volta. L’impacchettamento gira comunque sull’host, fuori da questi limiti. disattivata

La compilazione gira nell’immagine di compilazione Go fissata del progetto, con la rete spenta, quindi non scarica nulla. La cache dei moduli è montata in sola lettura. Se una destinazione fallisce, non resta nessuna cartella di output. Il commit viene aggiunto al numero di versione e incorporato nel programma; l’app e i suoi backup lo riportano.

Cosa contiene un archivio

Il programma, la licenza, le note di terze parti, le guide, un manifesto dei sorgenti e l’identità del pacchetto. Un archivio sorgente a parte contiene il sorgente del progetto e le dipendenze Go; tienilo accanto ai binari.

SHA256SUMS dimostra che i file corrispondono. Non è una firma. Lo stesso commit, la stessa versione e gli stessi input danno gli stessi archivi, quindi puoi ricompilare per verificare.

Note di esecuzione
Argomento Dettaglio
Percorso di configurazione Predefinito /config. Passa sempre -config, su un disco locale.
Obiettivo di memoria 384 MiB senza GOMEMLIMIT. Impostalo a circa l’80 percento della memoria che gli dai. Un obiettivo, non un limite rigido.
Modalità a basso consumo di memoria Su Linux, si attiva da sola a circa 2.5 GiB o meno; l’obiettivo scende a un quarto della memoria, tra 192 e 384 MiB. Decide HOLYARRS_LOW_MEMORY=1 o 0.
Node Non serve per eseguirlo.
Hardlink Tieni download e cartelle della Libreria su un solo filesystem.

HolyArrs è gratis. Se ti ha fatto risparmiare tempo, metti una stella su GitHub, sostienilo o offrimi un caffè.