Versão portátil
Configuração
Executa o HolyArrs como um programa simples em Linux ou Windows, sem Docker. O Docker continua a ser a forma principal de o executar.
Antes de começares
Ligação para Antes de começares- Python 3, Git e Docker no computador de compilação.
- Uma cache de módulos Go já preenchida por uma compilação normal do projeto, e as dependências do frontend instaladas a partir de
app/frontend/package-lock.json. - A app web compilada tem de estar commitada. A compilação usa só código commitado; as alterações por commitar ficam de fora.
Compilar e executar
Ligação para Compilar e executar-
A partir do checkout, compila os ficheiros 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 uma pasta de saída nova, fora do checkout. Deves ver um ficheiro comprimido por alvo e um ficheiro
SHA256SUMS. -
Confere o ficheiro comprimido com o
SHA256SUMS. -
Extrai-o para uma pasta nova. Mantém o programa e a configuração em pastas separadas.
-
Inicia-o com o teu próprio caminho de configuração:
Terminal window ./holyarrs -config /srv/holyarrs/config -addr :6262No Windows PowerShell:
Terminal window .\holyarrs.exe -config 'C:\HolyArrs\config' -addr ':6262' -
Abre
http://your-server:6262. Deves ver o assistente da primeira execução. Cria logo a conta de proprietário; o primeiro visitante passa a ser o proprietário.
Opções
Ligação para OpçõesCom que utilizador corre
Ligação para Com que utilizador correExecuta o HolyArrs com uma conta própria, com permissão de escrita só na configuração e nos teus ficheiros multimédia.
- Como root fora de um contentor, sem
PUIDePGID, para com “started as root outside a container”. - Com
PUIDePGIDdefinidos, passa a pasta de configuração a esse utilizador e muda para ele. - No Windows, protege a pasta de configuração com uma permissão NTFS para essa conta.
Reinícios e limites
Ligação para Reinícios e limitesO ficheiro comprimido não instala nenhum serviço. Configura o reinício automático e os limites rígidos de memória no teu gestor de serviços (systemd, NSSM, Task Scheduler). Reiniciar a partir da app e restaurar uma cópia de segurança saem ambos do programa e esperam que seja iniciado outra vez.
Atualizar e voltar atrás
Ligação para Atualizar e voltar atrás- Confere o ficheiro comprimido novo antes de parares a app.
- Para o HolyArrs e copia a pasta de configuração inteira, chave mestra incluída. Ou faz uma cópia de segurança na app e guarda a chave à parte.
- Extrai o programa novo para uma pasta diferente. Mantém o programa antigo e a cópia antiga da configuração.
- Inicia o programa novo com a tua configuração. Deves conseguir iniciar sessão, e
/healthdeve mostrar running.
Se não funcionar
Ligação para Se não funcionar| Sintoma | Causa | Solução |
|---|---|---|
| “started as root outside a container” | Foi iniciado como root | Executa-o com um utilizador próprio, ou define PUID e PGID. |
| A app sai depois de um restauro | Um restauro prepara os dados e sai com o código 75 | Inicia-a outra vez para os aplicar. Configura o teu gestor de serviços para a reiniciar. |
| As chamadas HTTPS falham em Linux | Não há certificados CA do sistema | Instala-os. |
| A compilação diz que a saída já existe | As pastas de saída existentes são recusadas | Escolhe uma pasta nova. |
Para especialistas
Ligação para Para especialistasOpções de compilação
| Opção | O que faz | Predefinição |
|---|---|---|
--targets |
Subconjunto a compilar, separado por vírgulas | linux-amd64, |
--low-resource |
Cada contentor de compilação recebe 1 CPU, 2 GiB e 256 processos; o Go compila um pacote de cada vez. A empacotagem continua a correr no host, fora destes limites. | desativado |
A compilação corre na imagem de compilação Go fixada do projeto, com a rede desligada, por isso não transfere nada. A cache de módulos é montada só de leitura. Se algum alvo falhar, não fica nenhuma pasta de saída. O commit é acrescentado ao número da versão e compilado no programa; a app e as suas cópias de segurança indicam-no.
O que tem um ficheiro comprimido
O programa, a licença, os avisos de terceiros, os guias, um manifesto do código-fonte e a identidade do pacote. Um ficheiro comprimido de código-fonte à parte contém o código do projeto e as dependências Go; guarda-o junto dos binários.
O SHA256SUMS prova que os ficheiros correspondem. Não é uma assinatura. O mesmo commit, versão e entradas dão os mesmos ficheiros comprimidos, por isso podes compilar de novo para conferir.
Notas de execução
| Tema | Detalhe |
|---|---|
| Caminho de configuração | Predefinido /config. Passa sempre -config, num disco local. |
| Objetivo de memória | 384 MiB sem GOMEMLIMIT. Define-o para cerca de 80 por cento da memória que lhe deres. É um objetivo, não um limite rígido. |
| Modo de pouca memória | Em Linux, ativa-se sozinho com cerca de 2.5 GiB ou menos; o objetivo desce para um quarto da memória, entre 192 e 384 MiB. HOLYARRS_LOW_MEMORY=1 ou 0 decide. |
| Node | Não é preciso para executar. |
| Hardlinks | Mantém as pastas de transferências e da Biblioteca num só sistema de ficheiros. |
Relacionado
Ligação para RelacionadoO HolyArrs é gratuito. Se te poupou tempo, dá-lhe uma estrela no GitHub, patrocina-o ou oferece-me um café.