Siirry sisältöön

Portable-versio

Käyttöönotto

Aja HolyArrs tavallisena ohjelmana Linuxilla tai Windowsilla ilman Dockeria. Docker on edelleen pääasiallinen tapa ajaa sitä.

  • Python 3, Git ja Docker rakennuskoneella.
  • Täytetty Go-moduulien välimuisti tavallisesta projektin rakennuksesta, ja frontendin riippuvuudet asennettuna tiedostosta app/frontend/package-lock.json.
  • Rakennettu web-sovellus on commitoitu. Rakennus käyttää vain commitoitua lähdekoodia; commitoimattomat muokkaukset jäävät pois.
  1. Rakenna arkistot checkoutista:

    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

    Käytä uutta tulostekansiota checkoutin ulkopuolella. Näet yhden arkiston kutakin kohdetta kohti ja tiedoston SHA256SUMS.

  2. Tarkista arkisto tiedostoa SHA256SUMS vasten.

  3. Pura se uuteen kansioon. Pidä ohjelma ja asetukset eri kansioissa.

  4. Käynnistä se omalla asetuspolullasi:

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

    Windows PowerShellissä:

    Terminal window
    .\holyarrs.exe -config 'C:\HolyArrs\config' -addr ':6262'
  5. Avaa http://your-server:6262. Näet ensimmäisen käynnistyksen ohjatun toiminnon. Tee omistajan tili heti; ensimmäinen kävijä tulee omistajaksi.

Aja HolyArrs omalla tilillään, jolla on kirjoitusoikeus vain asetuksiin ja mediaasi.

  • Rootina containerin ulkopuolella ilman PUID- ja PGID-arvoja se pysähtyy viestiin “started as root outside a container”.
  • Kun PUID ja PGID on asetettu, se antaa asetuskansion kyseiselle käyttäjälle ja vaihtaa siihen.
  • Windowsilla suojaa asetuskansio NTFS-oikeudella kyseiselle tilille.

Arkisto ei asenna palvelua. Aseta automaattinen uudelleenkäynnistys ja kovat muistirajat omassa palvelunhallinnassasi (systemd, NSSM, Task Scheduler). Sovelluksesta tehty uudelleenkäynnistys ja varmuuskopion palautus sulkevat ohjelman, ja se pitää käynnistää uudelleen.

  1. Tarkista uusi arkisto, ennen kuin pysäytät sovelluksen.
  2. Pysäytä HolyArrs ja kopioi koko asetuskansio, pääavain mukaan lukien. Tai tee sovelluksen sisäinen varmuuskopio ja säilytä sen avain erikseen.
  3. Pura uusi ohjelma eri kansioon. Pidä vanha ohjelma ja vanha asetuskopio.
  4. Käynnistä uusi ohjelma asetuksillasi. Sinun pitäisi pystyä kirjautumaan, ja sivun /health pitäisi näyttää running.

Katso Varmuuskopiot.

Oire Syy Ratkaisu
“started as root outside a container” Käynnistetty rootina Aja se omalla käyttäjällään tai aseta PUID ja PGID.
Sovellus poistuu palautuksen jälkeen Palautus valmistelee tiedot ja poistuu koodilla 75 Käynnistä se uudelleen, niin palautus otetaan käyttöön. Aseta palvelunhallintasi käynnistämään se uudelleen.
HTTPS-kutsut epäonnistuvat Linuxilla Järjestelmän CA-varmenteita ei ole Asenna ne.
Rakennus sanoo, että tuloste on olemassa Olemassa olevat tulostekansiot hylätään Valitse uusi kansio.
Rakennusvalinnat
Valinta Mitä se tekee Oletus
--targets Pilkuilla erotettu osajoukko rakennettavaksi linux-amd64,linux-arm64,linux-armv7,windows-amd64
--low-resource Jokainen rakentajan container saa 1 suorittimen, 2 GiB ja 256 prosessia; Go rakentaa yhden paketin kerrallaan. Paketointi ajetaan silti isäntäkoneella näiden rajojen ulkopuolella. pois

Rakennus ajetaan projektin kiinnitetyssä Go-rakentajan imagessa ilman verkkoa, joten se ei lataa mitään. Moduulien välimuisti liitetään vain luettavana. Jos jokin kohde epäonnistuu, tulostekansiota ei jää. Commit lisätään versionumeroon ja rakennetaan ohjelmaan; sovellus ja sen varmuuskopiot ilmoittavat sen.

Mitä arkistossa on

Ohjelma, lisenssi, kolmansien osapuolten huomautukset, oppaat, lähdeluettelo ja paketin tunniste. Erillinen lähdearkisto sisältää projektin lähdekoodin ja Go-riippuvuudet; pidä se binäärien vieressä.

SHA256SUMS todistaa, että tiedostot täsmäävät. Se ei ole allekirjoitus. Sama commit, versio ja syötteet tuottavat samat arkistot, joten voit rakentaa uudelleen tarkistaaksesi.

Ajonaikaiset huomiot
Aihe Tieto
Asetuspolku Oletus /config. Anna aina -config, paikalliselle levylle.
Muistitavoite 384 MiB ilman GOMEMLIMIT-arvoa. Aseta se noin 80 prosenttiin antamastasi muistista. Tavoite, ei kova raja.
Vähämuistitila Linuxilla päällä itsestään noin 2,5 GiB:ssä tai alle; tavoite laskee neljännekseen muistista, välille 192–384 MiB. HOLYARRS_LOW_MEMORY=1 tai 0 ratkaisee.
Node Ei tarvita ajamiseen.
Hardlinkit Pidä lataukset ja kirjastokansiot samalla tiedostojärjestelmällä.

HolyArrs on ilmainen. Jos se säästi aikaasi, anna sille tähti GitHubissa, tue sitä tai tarjoa minulle kahvit.