Inofficiell
På den här sidan
  1. 01Ett webbmål
  2. 02Webbplatsprojektet
  3. 03Redigera, pusha, publicera
  4. 04Vad publiceringen gör

En webbplats från Git: bygg vid varje push och publicera på NAS:ens webbserver

Bucket & Code Server IDE lagrar en statisk webbplats i ett Git-arkiv på din NAS. Sidorna ligger i src/; en Makefile kopierar dem till public/, och varje push startar en länkkontroll på NAS:ens runner. Med en knapp kopieras public/ till en webbserver, till exempel QTS webbserver på samma NAS, och den publicerade sidan läses tillbaka för att kontrollera resultatet.

  1. Målen mapp och dess adress
  2. ProjektNytt projekt, Statisk webbplats
  3. Pushmake test vid varje push
  4. Publicerapublic/ till målet

Bilderna kommer från panelen i Bucket & Code Server IDE med fälten ifyllda som i den här guiden. NAS:en har adressen 192.168.1.20 och kontot heter ola.

01Ett webbmål

Ett webbmål är platsen dit en webbplats publiceras: en mapp på denna NAS som en webbserver levererar, eller en rclone-fjärrplats som din egen server via SFTP, FTP, WebDAV eller S3. QTS webbserver (Control Panel → Applications → Web Server) levererar resursen Web på http://<NAS address>/. En mapp där är därför det enklaste målet.

  1. På sidan Publicera (för administratörer, under Administration) trycker du på Lägg till ett mål i kortet Webbmål.
  2. Välj En mapp på denna NAS, ange ett Namn och skriv i Mapp en egen mapp i en delad resurs, till exempel /share/Web/mysite. Den ska vara tom eller ny, aldrig en hel delad resurs, och ligga utanför datamappen.
  3. Ange i Publik adress adressen som levererar mappen, här http://192.168.1.20/mysite/. Den måste börja med http:// eller https:// och får inte innehålla användarnamn, lösenord, frågesträng eller fragment. Tryck på Lägg till målet. Formulär för webbmål: En mapp på denna NAS vald, Namn My website, Mapp /share/Web/mysite, Publik adress http://192.168.1.20/mysite/ och knappen Lägg till målet
  4. Välj målet i listan och tryck på Testa. Programmet kopierar en liten fil till mappen, läser tillbaka den från den publika adressen och tar bort den. Kortet Webbmål: My website, /share/Web/mysite och http://192.168.1.20/mysite/; det senaste testet bekräftar att en fil kopierades, lästes från den publika adressen och togs bort

Ett rclone-mål anger en fjärrplats i säkerhetskopiornas rclone.conf, en sökväg där och den publika adress som levererar sökvägen.

02Webbplatsprojektet

Öppna Nytt projekt från Git-sidan eller kommandopaletten. Det kräver rollen developer; publiceringssteget nedan kräver administratörsbehörighet.

  1. Mall: välj Statisk webbplats under Webbplatser. Kortet Statisk webbplats valt: sidor och resurser i src/, en Makefile kopierar dem till public/ och make test kontrollerar länkarna
  2. Namn och synlighet: namnet, till exempel mysite, ger arkivet och mappen projects/mysite deras namn. Låt Privat vara valt om inte alla konton ska kunna läsa projektet. Namn mysite, ägare ola och valet mellan Privat och Offentlig
  3. Bygg: låt Bygg direkt efter skapandet vara på.
  4. Publicera: slå på Publicera på min webbserver och välj målet. Lägg till ett mål fungerar här som på sidan Publicera. Publicera på min webbserver påslaget: kopierar public/ till ett webbmål och läser tillbaka index.html via dess publika adress; målet My website valt
  5. Gå till Granskning och tryck på Skapa projekt. Sidan visar varje steg: arkivet och första commiten, första bygget och publiceringen. Projektet skapas: Forgejo-arkiv och första commit, första bygget och publicering på webbservern slutförda

Webbplatsen svarar på målets publika adress:

Mallens sida i en webbläsare: mysite, en uppgift om src/index.html och en länk till en beskrivning av webbplatsen

03Redigera, pusha, publicera

  • Redigera sidorna i src/ i redigeraren (projektet finns i mappen projects/), skapa en commit och pusha den. make kopierar src/ till public/; make test kontrollerar att varje lokal href= och src= på sidorna leder till en fil i public/; make clean tar bort public/.
  • Varje push startar projektets arbetsflöde på NAS:ens runner när CI-modulen är på: make test körs i byggmiljön Ubuntu 24.04. En trasig länk gör att körningen misslyckas. Fliken Actions i Forgejo: första körningen av build.yml för den första commiten lyckades
  • På projektsidan (Projekt eller i redigerarens sidofält) kan du bygga och publicera manuellt: Bygg kör make, Bygg om kör make clean och sedan make, och Publicera på My website skickar som administratör public/ till målet. En push startar inte publiceringen av sig själv. Projektsteg: Bygg, status byggd med standardmålet all, knapparna Bygg om och Publicera på My website samt status publicerad

04Vad publiceringen gör

  • Efter kopieringen innehåller målmappen webbplatsen och inget annat: filer som inte längre finns på webbplatsen tas bort. bvsd märker mappen med .bvs-web-target första gången den skrivs till (testet gör det också). Om en mapp innehåller andra filer men saknar märket avvisas den, så publiceringen tömmer inte någon annans mapp.
  • Efter kopieringen läser programmet index.html från den publika adressen och jämför innehållet byte för byte. Om adressen inte levererar det som kopierades misslyckas jobbet med web_check: och visar båda värdena: webbservern levererar en annan mapp eller så är adressen fel.
  • Ett projekt som skapar ett QPKG publicerar på samma sätt den senaste .qpkg-filen och dess .sha256-fil, kontrollerade med sha256.