Hur man kör Hermes Agent på en hemserver utan att förlora data

Eva Wong är Teknisk skribent och den boende fixaren på ZimaSpace. En livslång nörd med en passion för hemma-labb och öppen källkod, hon specialiserar sig på att översätta komplexa tekniska koncept till tillgängliga, praktiska guider. Eva tror att självhosting ska vara roligt, inte skrämmande. Genom sina handledningar ger hon gemenskapen verktyg att avmystifiera hårdvaruinstallationer, från att bygga sin första NAS till att bemästra Docker-containrar.

Snabbt svar

För att köra Hermes Agent på en hemserver utan att förlora data, förlita dig inte på containerns interna filsystem som den enda platsen där konfiguration, färdigheter, loggar, genererade filer eller gateway-inställningar finns. Planera först en beständig värdmapp eller Docker-volym, montera den i den containerväg som appen faktiskt använder, kontrollera filägarskap och verifiera att datan fortfarande finns kvar efter omstart eller omkonfiguration. Den här artikeln fokuserar på det vanliga felmönstret där en container inte kan hitta en mapp på grund av volymmontering, behörigheter eller vägkartläggningsproblem.

Det säkraste arbetsflödet för nybörjare är:

  1. Identifiera vilken Hermes Agent-data som måste överleva.
  2. Välj en dedikerad värdmapp eller Docker-hanterad volym.
  3. Mappa den lagringen till rätt containerväg.
  4. Bekräfta att appanvändaren kan skriva till den.
  5. Säkerhetskopiera viktig konfiguration före uppdateringar eller ombyggnader.
  6. Starta om och kontrollera att konfiguration, loggar, genererade filer och gateway-inställningar fortfarande finns kvar.

En körande container betyder inte automatiskt att din data är säker. Data är säker endast när den lagras på en beständig plats, är skrivbar av rätt användare, säkerhetskopieras vid behov och valideras efter omstart.

Varför Hermes Agent-data kan försvinna i en containeruppsättning

Containeriserade appar är ofta lätta att starta och ersätta. Det är användbart för uppdateringar, testning och återställning, men det betyder också att allt som bara lagras i det engångscontainerns lager kan gå förlorat när containern tas bort, återskapas eller byggs om.

För en självhostad AI-agent kan detta påverka mer än grundläggande inställningar. Beroende på hur du använder agenten kan du bry dig om modellkonfiguration, färdigheter, genererade filer, loggar, inställningar för meddelandegateway och annat app-tillstånd.

Containerns omstarter vs beständig appdata

En vanlig omstart av containern tar inte alltid bort data. Om datan lagras i en beständig volym eller korrekt mappad värdmapp bör den finnas kvar efter omstart.

Risken uppstår när viktiga filer bara finns i containerns skrivbara lager. Det lagret är inte samma som en planerad beständig dataplats. Om du återskapar containern utan att bevara eller montera rätt väg kan appen starta om från början eller misslyckas med att hitta sina tidigare filer.

Varför borttagning eller återskapande av en container kan ta bort osparat tillstånd

Att ta bort eller återskapa en container skiljer sig från att starta om den. En återskapad container kan använda ett nytt internt filsystem, nya miljövariabler eller en annan monteringsmappning.

Om Hermes Agent-inställningar, färdigheter, loggar eller genererade utdata aldrig skrevs till en beständig värdmapp eller volym, följer de kanske inte med den nya containern. Det är därför både "appen fungerade igår" och "appen återställdes efter uppdatering" kan vara sanna.

Den säkra vanan är att behandla containerbyte som en data-riskhändelse om du inte har bekräftat var appens data lagras.

Varför värdvägar och containervägar måste planeras först

En värdsökväg är där data finns på hemservern. En containersökväg är där appen ser den datan inifrån containern. En volymmontering eller bindmontering kopplar samman dessa två världar.

Om värdsökvägen är korrekt men monterad till fel containersökväg kan appen ändå bete sig som om mappen inte finns. Om containersökvägen är korrekt men värdsökvägen är tillfällig kan appen skriva data någonstans du inte avsett.

Planera mappningen innan du kör appen, inte efter att du förlorat data.

Vilken data bör du skydda innan du kör Hermes Agent?

Innan du ändrar en container, uppdaterar en bild eller omkonfigurerar en gateway, lista den data som skulle vara smärtsam att återskapa. Inte varje fil behöver samma skydd, men du bör veta vilka filer som är kritiska.

En användbar regel är: skydda allt som lagrar identitet, åtkomst, konfiguration, inlärt arbetsflöde eller utdata som du inte enkelt kan återskapa.

Agentkonfiguration och modellleverantörsinställningar

Modellinställningar inkluderar vanligtvis leverantörsval, slutpunktsvärden, modellnamn, kontextrelaterade alternativ och API-åtkomst. Om dessa inställningar förloras kan agenten starta men misslyckas med att svara korrekt.

Spara modellkonfiguration i en beständig appdataväg, inte i en tillfällig shell-session. Om konfigurationen tillhandahålls via miljövariabler, behåll en säker kopia av compose-filen, env-filen eller distributionsanteckningarna.

Skydda också alla installationsval som avgör hur agenten använder terminalverktyg eller meddelandegateways.

Appminne, sessioner, färdigheter och körningstillstånd

Hermes Agent-data kan innehålla mer än en konfigurationsfil. Hermes färdighetsdatastruktur förklarar att färdigheter finns i ~/.hermes/skills/, vilket är den primära sanningskällan för paket, hub-installationer och agent-skapade färdigheter. Den beskriver också relaterat tillstånd som paketmanifest, färdighetspaket, hubbens konfiguration, väntande färdighetsskrivningar och konfigurationsinställningar.

Detta är viktigt eftersom agent-skapade färdigheter kan bli återanvändbart procedurminne. Om fel sökväg monteras kan du förlora inte bara inställningar utan även arbetsflöden som agenten lärt sig eller färdigheter du installerat.

Behandla färdigheter, paket, väntande skrivningar och profilrelaterat tillstånd som beständig agentdata.

Nedladdningar, genererade filer, loggar och verktygsutdata

Genererade filer är lätta att förbise. En agent kan skapa planer, skript, rapporter, skärmdumpar, loggar eller nedladdade filer under normal användning.

Dessa filer kan sparas i den aktiva arbetsytan, backend-arbetskatalogen, appens hemkatalog eller en monterad utdata-sökväg. Om den platsen bara finns inuti containern kan filerna försvinna när containern tas bort.

För praktisk användning, bestäm var genererade filer ska sparas på värdservern och verifiera att containern kan skriva dit.

API-nycklar, bot-tokens och miljövariabler

Hemligheter är inte vanlig appdata. API-nycklar, bot-tokens, instrumentpanellösenord och miljövariabler behöver både persistens och skydd.

Spara inte hemligheter i slumpmässigt genererade utdata-mappar eller breda delade kataloger. Förvara dem i en kontrollerad konfigurationsväg med begränsad åtkomst.

En bra hantering av hemligheter bör svara på:

  • var hemligheten lagras;
  • vilken användare som kan läsa den;
  • om den ingår i säkerhetskopior;
  • om säkerhetskopian är krypterad eller åtkomstkontrollerad;
  • hur hemligheten kan roteras om den exponeras.

Värdsökväg vs containersökväg vs volymmonteringar

Detta är nyckelkonceptet bakom de flesta problem med "containern kan inte hitta mappen" och "data försvann efter omstart". En container kan bara se vad som finns i dess eget filsystem eller vad som har monterats in i den.

Använd The Agent Data Survival Map för att organisera installationen innan du felsöker.

Ramverksmodul Nyckelfråga Vad det hjälper dig att avgöra Fokus för installation / felsökning
Datainventering Vilken data måste överleva containeromstart eller återställning? Vilka konfigurationer, färdigheter, loggar, nedladdningar, tokens och genererade filer behöver skydd Förhindrar att viktig agentdata behandlas som förgängligt tillstånd
Persistensväg Var ska persistent data lagras på värden? Om en dedikerad värdmapp, Docker-volym eller bind-mount ska användas Förhindrar dataåterställning efter containeråterställning
Monteringsmappning Är värdsökvägen korrekt mappad till containersökvägen? Kan appen faktiskt se den avsedda mappen? Hjälper till att diagnostisera saknade mappar och felaktiga destinationssökvägar
Behörighetsgräns Vilken användare äger den monterade datan och vilken användare skriver till den? Om värdanvändare, containeranvändare, appanvändare eller root äger filerna Hjälper till att fixa behörighetsfel utan att göra allt root-ägt
Säkerhetskopieringsgräns Vad som bör säkerhetskopieras före uppdateringar eller omkonfiguration? Vilken data som är kritisk och vilken som är temporär Förhindrar förlust av konfiguration, färdigheter, sessioner, tokens och gateway-inställningar
Omstartvalidering Finns datan kvar efter omstart eller uppdatering? Om installationen verkligen är hållbar Gör "det körs" till en upprepbar säkerhetskontroll

Vad värdservern lagrar

Värdservern lagrar de verkliga mapparna, diskarna och Docker-hanterade lagringsplatser. Om du använder en bind-mount väljer du en specifik värdmapp. Om du använder en namngiven Docker-volym väljer och hanterar Docker lagringsplatsen.

Denna skillnad är viktig eftersom värd-synlighet påverkar säkerhetskopiering och migrering. En bind-monterad mapp kan vara lättare för en nybörjare att hitta och kopiera. En namngiven volym kan vara renare för Docker-hanterade appdata, men du måste fortfarande veta hur du inspekterar eller säkerhetskopierar den.

Välj lagringsstil baserat på om du behöver människoläsbara värdmappningar, Docker-hanterad app-persistens eller en kontrollerad säkerhetskopieringsväg.

Vad containern kan se

Containern ser sitt eget interna filsystem och alla monterade sökvägar. Den ser inte automatiskt alla mappar på din hemserver.

Dockers guide för bind mount visar hur en värdkatalog kan visas inuti en container på en målväg, och hur filändringar kan speglas mellan värddatorn och containern när mounten är korrekt.

Det är kärnidén: appen bryr sig inte om var en fil finns på värddatorn så länge filen är monterad i den sökväg appen använder.

Hur volymmonteringar håller appdata persistent

En persistent mount ger appen en stabil plats att skriva data till bortom livslängden för en enskild container. För appdata är detta ofta skillnaden mellan ”omstartssäker” och ”endast under containerlivslängd.”

Mounten måste matcha appens förväntade dataväg. Om appen skriver till en intern mapp men du monterar en annan mapp kan datan ändå hamna i tillfälligt lagringsutrymme.

En bra persistent setup bör definiera:

  • värdmappen eller den namngivna volymen;
  • containerns målsökväg;
  • om mounten är skrivbar eller skrivskyddad;
  • vilken appdata som hör dit;
  • hur sökvägen kommer att säkerhetskopieras.

Varför felaktig sökvägsmappning orsakar fel med saknade mappar

Felaktig mappning ser ofta ut som ett problem med en saknad mapp. Mappen kan finnas på värddatorn, men containern kan inte se den. Eller containern kan ha en mapp på den förväntade sökvägen, men den är inte kopplad till den värdmapp du avsåg.

Vanliga symtom inkluderar:

  • appen säger att en mapp inte finns;
  • genererade filer visas i containern men inte på värddatorn;
  • loggar försvinner efter att containern byggts om;
  • konfiguration återställs efter uppdatering;
  • du redigerar en värdmapp men appen fortsätter använda gamla inställningar;
  • backup-skript körs men inkluderar inte den riktiga appdatan.

När detta händer, kontrollera värdsökväg och containersökväg tillsammans. Inspektera inte bara ena sidan.

Hur man kör Hermes Agent utan att förlora data

Målet är inte bara att starta Hermes Agent. Målet är att säkerställa att den data du bryr dig om överlever omstart, uppdatering, ombyggnad och omkonfiguration.

Steg 1: Välj en dedikerad värddata-mapp

Välj en värddata-mapp innan du kör eller bygger om containern. Den bör vara lätt att identifiera, enkel att säkerhetskopiera och inte blandad med orelaterade personliga filer.

En dedikerad mapp minskar risken eftersom du kan se vad som tillhör appen. Det undviker också att montera hela din hemkatalog eller andra känsliga mappar i containern.

En praktisk värddata-mapp bör vara:

  • specifik för appen;
  • utanför tillfälliga nedladdningsvägar;
  • inkluderad i din backup-plan;
  • inte delad brett med orelaterade tjänster;
  • skrivbar endast för de användare eller tjänster som behöver åtkomst.

Steg 2: Montera data-mappen i containern

Montera värddatorns data-mapp till den sökväg i containern som appen förväntar sig. Det är här många problem med dataförlust skapas eller förhindras.

För en bind mount väljer du värddatorns sökväg och målvägen är där den visas inuti containern. För en namngiven volym hanterar Docker platsen på värdsidan.

Anta inte att appen automatiskt använder en monterad mapp. Bekräfta att den monterade målsökvägen matchar den faktiska appdatamappen.

Steg 3: Bekräfta att containern använder den förväntade appdatamappen

Efter montering, kontrollera sökvägen inifrån containern. En mapp kan finnas på värden men ändå vara osynlig för appen om den inte är korrekt monterad.

Den enklaste kontrollen är att skapa eller hitta en ofarlig testfil från ena sidan och bekräfta att den visas på andra sidan. Verifiera sedan att appen skriver riktiga konfigurations-, logg- eller genererade filer i samma beständiga sökväg.

Detta steg är särskilt viktigt före uppdateringar eller migrering.

Steg 4: Kontrollera filägarskap och skrivbehörigheter

En korrekt montering kan ändå misslyckas om appen inte kan skriva till den. Behörighetsfel uppstår ofta när filer skapas av root men appen senare körs som en annan användare.

Kontrollera ägarskap innan du ändrar behörigheter brett. Rätt åtgärd är vanligtvis att ge den avsedda appanvändaren möjlighet att läsa och skriva i den specifika appdatamappen, inte att ge varje process full kontroll över breda värdkataloger.

Om du ser behörighetsfel, identifiera:

  1. den monterade värdsökvägen;
  2. containerns målsökväg;
  3. användaren som kör appen;
  4. filens ägare;
  5. om monteringen är skrivskyddad;
  6. om en säkerhetskopierings- eller exportväg också är skrivbar.

Steg 5: Förvara hemligheter och konfigurationsfiler utanför tillfälliga sökvägar

Hemligheter och konfigurationsfiler bör inte bara finnas i temporära mappar, genererade utdata-kataloger eller tillfällig shell-historik. Om du använder miljövariabler, förvara distributionsfilen eller env-filen på en kontrollerad och beständig plats.

Undvik att blanda hemligheter med loggar eller genererade artefakter. Loggar kan delas för felsökning, medan hemligheter aldrig bör delas lättvindigt.

Om du säkerhetskopierar hemligheter, skydda säkerhetskopian. En säkerhetskopia som exponerar API-nycklar eller bot-token skapar en annan typ av risk.

Steg 6: Starta om containern och verifiera att data fortfarande finns

Efter installation, starta om containern och kontrollera om viktiga data finns kvar. Detta är det mest praktiska testet för beständighet.

Stanna inte vid ”containern startar.” Bekräfta att:

  • modellinställningar finns fortfarande kvar;
  • färdigheter eller appstatus förblir synliga;
  • loggar fortsätter på förväntad plats;
  • genererade filer visas på värden;
  • gateway- eller botinställningar fungerar fortfarande;
  • säkerhetskopieringsfiler kan finnas.

En konfiguration som klarar omstartskontroll är mycket säkrare än en som bara klarade den första installationen.

Behörigheter, säkerhetskopior och säkerhetsgränser

Datasäkerhet beror på tre gränser: vem som kan skriva, vad som säkerhetskopieras och vad agenten får åtkomst till. Dessa gränser är särskilt viktiga för självhostade agenter eftersom de kan skapa filer, ändra arbetsflöden eller interagera med verktyg.

Varför behörigheter för containeranvändare är viktiga

Behörigheter för containeranvändare avgör om appen kan läsa och skriva sina data. Om appen körs som en användare men den monterade mappen ägs av en annan användare kan skrivoperationer misslyckas.

Detta är anledningen till att köra ett installationskommando som root kan skapa problem senare. Root kan framgångsrikt skapa filer, men den normala appanvändaren kanske inte kan ändra dem.

Åtgärda behörigheter på appdatamappnivå. Undvik breda behörighetsändringar som exponerar orelaterade värdfiler.

Varför du bör undvika att köra allt som root

Root kan kringgå många begränsningar, men det gör det inte till ett säkert standardval. Att köra allt som root kan skapa root-ägda filer, dölja behörighetsproblem och ge appen mer åtkomst än den behöver.

För de flesta självhostade apparbetsflöden bör root endast användas för specifika administrativa steg. Rutinkonfiguration av appen bör köras som den avsedda app- eller containeranvändaren när det är möjligt.

Ett säkrare mönster är minsta privilegium: ge appen skrivåtkomst endast till de mappar den behöver.

När man ska använda skrivskyddade monteringar eller begränsade mappar

Använd skrivskyddade monteringar när agenten behöver inspektera filer men inte ska ändra dem. Använd begränsade skrivbara mappar när agenten behöver skapa resultat men inte ska röra breda personliga eller systemkataloger.

Detta är särskilt användbart när du vill att agenten ska generera rapporter, planer eller skript utan att ge den skrivåtkomst till alla serverfiler.

En design med begränsade mappar minskar risken för misstag. Det gör också säkerhetskopiering enklare eftersom du vet vilken mapp som innehåller appens tillstånd och vilken som innehåller genererade resultat.

Hur man säkerhetskopierar agentdata före uppdateringar eller omkonfiguration

Säkerhetskopiera viktig appdata innan du ändrar containerbilder, monteringsvägar, gateway-inställningar eller profiler. En säkerhetskopia är bara användbar om du vet vad den innehåller och hur du återställer den.

Docker-communityns diskussionsforum om behörighetsproblem vid säkerhetskopiering av volymer visar ett vanligt användarfel: en sökväg kan finnas, men säkerhetskopiering eller skrivoperationer kan ändå misslyckas på grund av behörigheter, ägarskap, märkning eller monteringsrelaterade begränsningar.

Använd detta som en påminnelse att testa säkerhetskopior, inte bara skapa dem. En säkerhetskopieringsplan bör inkludera både skapande av säkerhetskopior och verifiering av återställning.

Vanliga problem och hur man löser dem

När Hermes Agent-data saknas, installera inte om appen omedelbart. Identifiera först vilket lager som misslyckades: datainventering, persistenssökväg, monteringsmappning, behörighetsgräns, säkerhetskopieringsgräns eller omstartvalidering.

Containern kan inte hitta en monterad mapp

Detta betyder vanligtvis att sökvägen finns i ett lager men inte i det andra. Värdmappen kanske inte är monterad, containerns målsökväg kan vara felaktig, eller appen kan leta någon annanstans.

Kontrollera i denna ordning:

  1. Bekräfta att mappen finns på värddatorn.
  2. Bekräfta att containern har monteringen.
  3. Bekräfta målsökvägen inuti containern.
  4. Bekräfta att appen är konfigurerad för att använda den målsökvägen.
  5. Bekräfta att appanvändaren kan läsa mappen.
  6. Bekräfta att mounten återskapades efter ändring av compose- eller körinställningar.

Lös inte detta genom att skapa slumpmässiga mappar inuti containern. Det kan göra att felet försvinner tillfälligt men lämnar data i flyktig lagring.

Appdata återställs efter omstart

Om data återställs efter omstart kan appen skriva till containerns interna filsystem istället för den beständiga sökvägen. Den kan också använda en annan profil, miljövariabel eller datakatalog än förväntat.

Kontrollera om datavägen före och efter omstart är densamma. Kontrollera sedan om mappen stöds av en mount eller endast av containerlagret.

Om appen återskapades, bekräfta att samma volym eller bind-mount var kopplad till den nya containern.

Behörighetsfel i datakatalogen

Behörighet nekad betyder att appen kan se sökvägen men inte utföra den nödvändiga åtgärden. Problemet kan vara ägarskap, skrivskyddad montering, filsystemsetiketter eller en mismatch mellan värdanvändare och containeranvändare.

Börja med den minsta kontrollen: kan appanvändaren skapa en ofarlig testfil i datakatalogen? Om inte, undersök ägare och behörigheter för just den sökvägen.

Undvik att lösa detta genom att ge bred skrivåtkomst till hela värdkatalogen. Fixa appens dataväg och avsedd appanvändare.

Genererade filer sparas endast inuti containern

Om genererade filer försvinner efter ombyggnad sparades de troligen inuti containern istället för en monterad värdsökväg. Detta händer ofta när appens arbetskatalog eller utmatningskatalog inte är mappad.

Bestäm var genererade filer ska hamna. Montera sedan den utmatningsmappen eller konfigurera appen att skriva till en befintlig beständig plats.

Efter att ha ändrat sökvägen, skapa en ofarlig testfil och bekräfta att den visas på värddatorn.

Bot- eller gateway-inställningar försvinner efter omkonfiguration

Gateway-inställningar kan försvinna om konfigurationen sparas i en icke-beständig sökväg eller om appen körs under en annan profil efter omstart. Detsamma kan hända om en miljövariabel ändras på ett ställe men den körande containern använder ett annat värde.

Kontrollera om gateway-konfigurationen, bot-tokenreferensen, tillåtelselistan och instrumentpanelens inställningar sparas på den förväntade beständiga platsen. Starta sedan om gatewayen och bekräfta att inställningarna fortfarande är aktiva.

Om boten fungerar före omstart men inte efter, fokusera på beständighet och miljökonfiguration innan du ändrar token.

Hur du kontrollerar om din Hermes Agent-data är säker

En säker installation bör klara omstart, skrivning, säkerhetskopiering och åtkomstkontroller. Dessa kontroller behöver inte vara komplicerade, men de bör upprepas efter större ändringar.

Konfigurationen kvarstår efter omstart

Ändra en ofarlig inställning, starta om containern och kontrollera att inställningen kvarstår. Detta bekräftar att appen skriver till beständig lagring.

Om inställningen försvinner, fortsätt inte att lägga till mer konfiguration. Fixa datavägen först.

Loggar och genererade filer visas i den förväntade värdmappen

Loggar och genererade filer bör dyka upp där du förväntar dig dem på värden. Om de bara finns inne i containern kan de gå förlorade vid ombyggnad.

Kontrollera båda sidor av monteringen. Värden och containern bör vara överens om de viktiga filerna.

Agenten kan skriva till appdata utan behörighetsfel

Agenten ska kunna skriva till sin appdatamapp som den avsedda användaren. Ett lyckat skrivtest är mer användbart än att bara bekräfta att mappen finns.

Var uppmärksam på behörighetsfel i loggar efter omstart. Vissa behörighetsproblem uppstår bara när agenten försöker uppdatera konfiguration, skriva en färdighet, spara en genererad fil eller uppdatera gateway-status.

Säkerhetskopieringsfiler kan lokaliseras och återställas

En säkerhetskopia är ofullständig tills du kan hitta den och återställa den till en testplats. Minst, bekräfta att säkerhetskopian innehåller den data du avsåg att skydda.

För viktiga konfigurationer, återställ säkerhetskopian till en separat mapp eller testinstans innan du förlitar dig på den. Detta undviker att upptäcka återställningsproblem först efter att data gått förlorad.

Panel- eller meddelandeåtkomst fungerar fortfarande efter omstart

Efter omstart, verifiera att panelen eller meddelandeåtkomsten fortfarande fungerar. Detta bekräftar att permanent data, autentiseringsuppgifter, gateway-inställningar och nätverksåtkomst fortfarande är i linje.

Om panelen fungerar men meddelandena misslyckas, kontrollera gateway-inställningar och tokenåtkomst. Om meddelandena fungerar men genererade filer försvinner, kontrollera utdata-vägen och monteringar.

Hur detta fungerar i en verklig hemservermiljö

I en verklig hemserverkonfiguration gäller samma dataskyddslogik även när systemet tillhandahåller en användarvänlig panel. Du måste fortfarande veta vilken data som måste överleva, var den lagras, hur containern ser den, vilken användare som kan skriva till den och hur du verifierar detta efter omstart.

Till exempel visar ZimaOS Hermes Agent installationsarbetsflöde en enhetsspecifik väg som inkluderar konfiguration av modellleverantör, inställning av Telegram-gateway, att gå in i Hermes-containern, aktivera appmiljön, kontrollera webbpanelen och felsöka behörighets- eller botresponsproblem.

För användare som kör Docker-appar, agentarbetsflöden och lokala tjänster på en kompakt maskin som alltid är på, är ZimaBoard 2 hemserver ett relevant exempel på den typ av lättviktig hemservermiljö där permanenta mappar, containervägar, behörigheter och lagringsutökning behöver planeras tillsammans. Det är inte den enda möjliga konfigurationen, men den matchar den typ av självhostat apparbetsflöde som diskuteras i denna guide.

Den allmänna lärdomen är portabel: innan du litar på en containeriserad agent med användbart arbete, se till att dess viktiga data överlever bortom den container som råkar köras idag.

Vanliga frågor

Varför försvann min Hermes Agent-data efter att containern startades om?

En enkel omstart bör inte radera persistent data, men appen kan verka återställd om den skrev till en icke-persistent container-sökväg. Data kan också saknas om containern skapades om utan samma volym eller bind mount. Kontrollera värdvägen, container-sökvägen och den faktiska appdatavägen innan du ändrar fler inställningar.

Vad är skillnaden mellan en Docker-volym och en bind mount?

En Docker-volym hanteras av Docker, medan en bind mount mappar en värdmapp du väljer in i containern. En volym är ofta ren för apphanterad data, medan en bind mount är lättare att hitta direkt på värddatorn. Det bästa valet beror på om du vill ha Docker-hanterad lagring eller en synlig värdmapp för säkerhetskopiering och inspektion.

Var ska jag lagra Hermes Agent-appdata på en hemserver?

Använd en dedikerad persistent mapp eller Docker-volym istället för en temporär container-sökväg. Platsen bör vara lätt att säkerhetskopiera, begränsad till appens behov och inte blandad med känsliga, orelaterade filer. Det viktigaste är att appens förväntade container-sökväg faktiskt måste mappas till det persistenta lagret.

Varför säger containern att en mapp inte finns?

Mappen kan finnas på värddatorn men inte inne i containern. Detta betyder vanligtvis att monteringen inte skapades, källvägen är fel, målvägen är fel eller att appen letar i en annan container-sökväg. Kontrollera både värdsidan och containersidan istället för att skapa en ny mapp utan eftertanke.

Bör jag köra Hermes Agent som root för att undvika behörighetsfel?

Att köra som root kan dölja omedelbara fel, men det kan skapa filer som ägs av root och öka risken. Ett säkrare tillvägagångssätt är att ge den avsedda appanvändaren läs- och skrivbehörighet endast till den nödvändiga appdatavägen. Använd root endast för specifika administrativa eller reparationsåtgärder när du förstår ändringen.

Hur ofta bör jag säkerhetskopiera Hermes Agent-data?

Säkerhetskopiera innan uppdateringar, ombyggnad av container, ändringar i sökvägar, omkonfigurering av gateway eller migrering till en annan server. För aktiv användning, schemalägg regelbundna säkerhetskopior baserat på hur ofta färdigheter, inställningar, genererade filer eller sessioner ändras. En säkerhetskopia är inte pålitlig förrän du har bekräftat att filerna kan hittas och återställas.

Support och tips

Mer att läsa

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.