{"id":50223,"date":"2023-04-24T11:58:59","date_gmt":"2023-04-24T10:58:59","guid":{"rendered":"https:\/\/kinsta.com\/dk\/?p=50223&#038;preview=true&#038;preview_id=50223"},"modified":"2023-08-24T10:18:44","modified_gmt":"2023-08-24T09:18:44","slug":"persistent-storage","status":"publish","type":"post","link":"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/","title":{"rendered":"Persistent Storage: Langtidshukommelse i en tid med containere"},"content":{"rendered":"<p>Persistent storage henviser til opbevaring af data p\u00e5 en ikke-flygtig m\u00e5de, s\u00e5 de forbliver tilg\u00e6ngelige, selv efter at en enhed eller en applikation er slukket eller genstartet. Lagring og hentning af data g\u00f8r det muligt for webapplikationer at gemme brugeroplysninger og -tilstande og fungere p\u00e5lideligt.<\/p>\n<p>I monolitiske applikationer er adgangen til lageret ukompliceret, fordi serveren og lageret bor sammen. Geografisk distribuerede systemer g\u00f8r imidlertid adgangen mere kompleks, da lagringssystemet skal v\u00e6re tilg\u00e6ngeligt for alle komponenter i hele verden.<\/p>\n<p>Containerisering komplicerer problemet yderligere, fordi containere er lette, tilstandsl\u00f8se og flygtige &#8211; uegnede egenskaber til lagring af data. Derfor skal enhver persistent storage-l\u00f8sning kunne fungere problemfrit med containere, hvilket tilf\u00f8jer endnu et lag af kompleksitet.<\/p>\n<p>Kinstas containeriserede <a href=\"https:\/\/sevalla.com\/application-hosting\/\">Applikation Hostingplatform<\/a> bruger Kubernetes vedvarende volumener til at knytte <a href=\"https:\/\/kinsta.com\/dk\/changelog\/persistent-storage\/\">persistent storage<\/a> til en eller flere af en applikations processer. Kinsta-brugere kan definere deres vedvarende lagringskrav, mens de opretter applikationer i MyKinsta-dashboardet.<\/p>\n<p>Denne artikel tager et platformsuafh\u00e6ngigt kig p\u00e5 persistent storage ved at udforske dens typer, arkitektur og anvendelsesmuligheder. Den indeholder ogs\u00e5 en praktisk demonstration, der illustrerer forskellen mellem volumenlagring og persistent volumenlagring i Docker.<\/p>\n<div><\/div><kinsta-auto-toc heading=\"Table of Contents\" exclude=\"last\" list-style=\"arrow\" selector=\"h2\" count-number=\"-1\"><\/kinsta-auto-toc>\n<h2>Typer af Persistent Storage<\/h2>\n<p>Der findes flere typer af ikke-flygtig lagring, herunder traditionelle spindediske (harddiske eller HDD&#8217;er), SSD&#8217;er (Solid State Drives), NAS (Network-Attached Storage) og SAN&#8217;er (Storage Area Networks).<\/p>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li><strong>HDD&#8217;er<\/strong> er elektromekaniske datalagringsenheder, der lagrer og henter digitale data ved hj\u00e6lp af spindeldiske af magnetiske medier. Diskene anvender magnetiske hoveder p\u00e5 en bev\u00e6gelig aktuatorarm, der l\u00e6ser og skriver data.<\/li>\n<li><strong>SSD&#8217;er<\/strong>, der undertiden kaldes halvlederlagringsenheder, solid-state-enheder eller solid-state-diske, anvender integrerede kredsl\u00f8b til vedvarende lagring af data, normalt ved hj\u00e6lp af sammenkoblede flash-enheder uden bev\u00e6gelige dele. Deres station\u00e6re karakter g\u00f8r dem hurtigere og mere p\u00e5lidelige end HDD&#8217;er.<\/li>\n<li><strong>Netv\u00e6rkstilsluttet lagring<\/strong> er en gruppe af HDD&#8217;er, SSD&#8217;er eller begge dele, der er forbundet via et lokalt netv\u00e6rk ved hj\u00e6lp af et filsystem som NTFS (New Technology File System) eller EXT4 (4th Extended Filesystem).<\/li>\n<li><strong>SAN&#8217;er<\/strong> er netv\u00e6rksbaserede h\u00f8jhastighedslagerenheder p\u00e5 blokniveau, som f.eks. b\u00e5ndbiblioteker eller disk arrays. Deres forbindelse vises for operativsystemet som lokal lagring og er ikke tilg\u00e6ngelig via LAN (Local Area Network).<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n<h2>Arkitektur for persistant storage<\/h2>\n<p>Der findes tre tilgange til persistent storage, hver med unikke anvendelsesmuligheder og begr\u00e6nsninger.<\/p>\n<h3>Objektbestandig arkitektur<\/h3>\n<p>Den vedvarende objektarkitektur anvender objekt-relationel mapping (ORM) til at lagre data som objekter i en relationel database eller en n\u00f8glev\u00e6rdi-database. Denne tilgang er nyttig, n\u00e5r dataene ikke har et defineret skema, da ORM&#8217;en h\u00e5ndterer lagring og hentning af dataene.<\/p>\n<h3>Blokpersistent arkitektur<\/h3>\n<p>Ved blokpersistent arkitektur anvendes lagerenheder p\u00e5 blokniveau, som er nyttige ved lagring af store filer. Denne tilgang er fordelagtig, n\u00e5r der skal lagres store m\u00e6ngder data, da du kan bruge flere blokke for at \u00f8ge lagerkapaciteten.<\/p>\n<h3>Filestore persistent arkitektur<\/h3>\n<p>Som navnet antyder, bruger filestore persistent arkitekturtilgangen et filsystem til at gemme data. En metode indeb\u00e6rer brug af databaseservere, som giver en centraliseret m\u00e5de at lagre data p\u00e5. Cloudhostingl\u00f8sninger som Kinsta&#8217;s bruger <a href=\"https:\/\/sevalla.com\/database-hosting\/\">databaseservere<\/a>, der let kan tilknyttes applikationer og tilbyder persistens.<\/p>\n<p>Filestore persistent arkitektur er nyttig i applikationer, der kr\u00e6ver hyppig hentning af filer, og n\u00e5r du har brug for en gr\u00e6nseflade til at administrere dem.<\/p>\n<h3>Anvendelsestilf\u00e6lde for persistent storage<\/h3>\n<p>I dette afsnit gennemg\u00e5s nogle af anvendelsestilf\u00e6ldene for de enkelte lagringstyper.<\/p>\n<h4><strong>Persistent objektlagring<\/strong><\/h4>\n<ul>\n<li><strong>Opbevaring i skyen:<\/strong> Objektpersistent lagring bruges ofte i <a href=\"https:\/\/kinsta.com\/blog\/what-is-cloud-storage\/\">cloud-lagringsl\u00f8sninger<\/a> til at lagre og hente store m\u00e6ngder ustrukturerede data, f.eks. billeder, videoer og dokumenter. Cloud-udbydere bruger objektlagring til at give kunderne skalerbare, meget tilg\u00e6ngelige og holdbare lagertjenester.<\/li>\n<li><strong>Big data-analyse:<\/strong> Vedvarende objektlagring anvendes i big data-analyse til at lagre og administrere store datas\u00e6t, der ofte anvendes til dataanalyse, maskinl\u00e6ring og AI. Objektlagring g\u00f8r det muligt at f\u00e5 adgang til data hurtigt og effektivt, hvilket g\u00f8r det til en vigtig komponent i big data-arkitekturer.<\/li>\n<li><strong>Netv\u00e6rk til levering af indhold:<\/strong> Vedvarende objektlagring anvendes i <a href=\"https:\/\/kinsta.com\/dk\/blog\/hvad-er-et-cnd\/\">content delivery netowrk<\/a> (CDN&#8217;er) til at lagre og distribuere indhold, f.eks. billeder, videoer og statiske filer, p\u00e5 tv\u00e6rs af et globalt netv\u00e6rk af servere. Objektlagring g\u00f8r det muligt for CDN&#8217;er at levere h\u00f8jhastighedsindhold til brugere over hele verden, uanset hvor de befinder sig.<\/li>\n<\/ul>\n<h4><strong>Persistent blokopbevaring<\/strong><\/h4>\n<ul>\n<li><strong>H\u00f8jtydende databehandling (HPC):<\/strong> HPC-milj\u00f8er hurtig og effektiv behandling af store datam\u00e6ngder. Block persistent storage g\u00f8r det muligt for HPC-klynger at lagre og hente store datas\u00e6t, f.eks. videnskabelige simuleringer, vejrmodellering og finansielle analyser. Bloklagring foretr\u00e6kkes ofte til HPC, fordi den giver h\u00f8jtydende adgang til data med lav latenstid og muligg\u00f8r parallelle input\/output-operationer (I\/O), hvilket kan forbedre behandlingstiden betydeligt.<\/li>\n<li><strong>Videoredigering:<\/strong> Videoredigeringsprogrammer kr\u00e6ver h\u00f8jtydende adgang til store videofiler med lav latenstid og h\u00f8j ydeevne. De skal ogs\u00e5 kunne h\u00e5ndtere et betydeligt antal I\/O-operationer pr. sekund og lav latenstid for at kunne rendere og redigere videofiler i realtid. Bloklagring giver disse muligheder, hvilket g\u00f8r det til en ideel l\u00f8sning til videoredigering af arbejdsgange.<\/li>\n<li><strong>Spil:<\/strong> Spilapplikationer kr\u00e6ver ogs\u00e5 h\u00f8j ydeevne og lav latenstid for at f\u00e5 adgang til spilaktiver og spillerdata. Block storage lagrer og henter hurtigt store datam\u00e6ngder, hvilket sikrer, at spilmilj\u00f8er indl\u00e6ses hurtigt og forbliver responsive under spillet.<\/li>\n<\/ul>\n<h4><strong>Filestore Persistent storage<\/strong><\/h4>\n<ul>\n<li><strong>Medier og underholdning:<\/strong> Videoredigering, animation og renderingsprogrammer bruger ofte vedvarende lagring. Disse programmer kr\u00e6ver h\u00f8jtydende adgang til store mediefiler, f.eks. video, lyd og billeder, med lav forsinkelse og h\u00f8j ydeevne. Filestore tilbyder et delt filsystem, som flere klienter kan f\u00e5 adgang til, hvilket g\u00f8r det til en ideel lagerl\u00f8sning til disse applikationer.<\/li>\n<li><strong>Styring af webindhold:<\/strong> <a href=\"https:\/\/kinsta.com\/content-management-systems\/\">Web vontent management systemer<\/a> (CMS&#8217;er) bruger filestore vedvarende lagring i delte filsystemer til at lagre og administrere webindhold, f.eks. tekst, billeder og multimediefiler. Filestore giver en central placering for webstedsindhold, hvilket g\u00f8r det lettere at administrere og opdatere det. Det g\u00f8r det ogs\u00e5 muligt for flere brugere at arbejde samtidigt p\u00e5 det samme indhold, hvilket forbedrer samarbejdet og produktiviteten.<\/li>\n<\/ul>\n<h2>Persistent storage i containere<\/h2>\n<p>Containere er lette, b\u00e6rbare, sikre og ukomplicerede og tilbyder en fusion mellem forskellige applikationer. De skal have en mekanisme til at persistere data mellem genstart og fjernelse af containere. Containere har filopbevaring eller et filsystem ligesom traditionelle applikationer, men n\u00e5r du genopbygger dem med nye \u00e6ndringer, mister du alle ikke-persistente data.<\/p>\n<p>Derfor tilbyder containere mulighed for at inkludere volumenlagring eller montere et lagringsvolumen. Containere behandler lagringsvolumener som en mappe. Alle data, der skrives til volumenet, g\u00e5r ind i hostsfilsystemet.<\/p>\n<p>Persistent storage for containere skal fungere p\u00e5 denne m\u00e5de, fordi genstart af en container skaber en ny instans og kasserer den gamle instans. Hvis en container ikke har en konsistent visning af dataene, vil dataene forsvinde, n\u00e5r containeren genstartes. Et lagringsvolumen bevarer dataene p\u00e5 tv\u00e6rs af sessioner og genstart af containeren, s\u00e5 containeren kan bevare sin tilstand, selv om den flyttes eller genstartes.<\/p>\n<h3>Volumen vs. persistent volumen<\/h3>\n<p>Containere tilbyder 2 m\u00e5der at lagre vedvarende data p\u00e5: ved hj\u00e6lp af volumener og vedvarende volumener. Der er en v\u00e6sentlig forskel mellem dem. En container administrerer dataene i volumenlagring. N\u00e5r du stopper en container, forbliver dataene og er tilg\u00e6ngelige, n\u00e5r du genstarter containeren. Men n\u00e5r du sletter eller fjerner en container, g\u00e5r dataene tabt, da du ogs\u00e5 sletter den underliggende volumenlagring.<\/p>\n<p>Persistent volumenlagring eller bind mounts er en m\u00e5de at lagre data uden for containerens filsystem p\u00e5. P\u00e5 denne m\u00e5de g\u00e5r dataene ikke tabt, selv n\u00e5r du sletter containeren. De er persistente, indtil de slettes manuelt.<\/p>\n<p>I det f\u00f8lgende afsnit demonstreres begge volumetyper med eksempler.<\/p>\n<h2>Demonstration af vedvarende opbevaring af containere<\/h2>\n<p>Vi har oprettet en lille webapplikation for at demonstrere vedvarende lagring med <a href=\"https:\/\/kinsta.com\/dk\/blog\/hvad-er-docker\/\">Docker-containere<\/a>. Du kan f\u00f8lge med ved at installere Docker og hente koden fra <a href=\"https:\/\/github.com\/bonisteel\/kinsta-persistent-storage\" target=\"_blank\" rel=\"noopener noreferrer\">dette GitHub-repository<\/a>.<\/p>\n<p>Applikationen er en element\u00e6r formular med 2 felter til brugerinput:<\/p>\n<ul>\n<li>Titel<\/li>\n<li>Dokumenttekst<\/li>\n<\/ul>\n<figure style=\"width: 538px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/04\/persistent-storage-demo-gui-interface.png\" alt=\"Sk\u00e6rmbillede: Demoapplikationens grafiske gr\u00e6nseflade til feedbackform.\" width=\"538\" height=\"561\"><figcaption class=\"wp-caption-text\">Demoapplikationens GUI med felter for <strong>titel<\/strong> og <strong>dokumenttekst<\/strong>.<\/figcaption><\/figure>\n<p>N\u00e5r du har gemt brugerinputtet, kan du f\u00e5 adgang til det ved at \u00e5bne filen i <strong>feedback-mappen<\/strong> med det navn, der er angivet i feltet <strong>Titel<\/strong>. Indtastningen fra feltet <strong>Document Text<\/strong> er filens indhold.<\/p>\n<h3>S\u00e5dan bruger du Volume Storage<\/h3>\n<p>N\u00e5r du har installeret applikationen p\u00e5 din egen maskine, kan det bruge volumenlagring som vist i <strong>Dockerfilen<\/strong>.<\/p>\n<figure style=\"width: 648px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/04\/persistent-storage-demo-dockerfile-content.png\" alt=\"Sk\u00e6rmbillede: Indholdet af Docker-filen, inklusive en VOLUME-attribut.\" width=\"648\" height=\"441\"><figcaption class=\"wp-caption-text\">Dockerfil, der viser brugen af volumenlagring.<\/figcaption><\/figure>\n<p>Nu skal du bygge aftrykket og k\u00f8re containeren. For at g\u00f8re det skal du udf\u00f8re f\u00f8lgende kommandoer.<\/p>\n<pre><code class=\"language-bash\">docker build -t feedback-node:volumes .\ndocker run -d -p 3000:80 --name feedback-app feedback-node:volumes<\/code><\/pre>\n<figure style=\"width: 411px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/04\/persistent-storage-demo-docker-build-command.png\" alt=\"Sk\u00e6rmbillede: Terminalvindue, der viser resultaterne af docker build-kommandoen med volumenlagring.\" width=\"411\" height=\"43\"><figcaption class=\"wp-caption-text\">Opbygning af programmet med volumenlagring.<\/figcaption><\/figure>\n<figure style=\"width: 629px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/04\/persistent-storage-demo-docker-run-command.png\" alt=\"Sk\u00e6rmbillede: Terminalvindue efter udf\u00f8relse af docker run-kommandoen med volumenlagring.\" width=\"629\" height=\"48\"><figcaption class=\"wp-caption-text\">K\u00f8rsel af containeren viser, at den administrerer volumenlagring.<\/figcaption><\/figure>\n<p>N\u00e5r applikationen k\u00f8rer, skal du navigere til localhost:3000 for at sende feedback.<\/p>\n<figure style=\"width: 732px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/04\/persistent-storage-demo-saving-form-data.png\" alt=\"Sk\u00e6rmbillede: Indsendelse af feedback via demoapplikationens grafiske gr\u00e6nseflade.\" width=\"732\" height=\"629\"><figcaption class=\"wp-caption-text\">Indsendelse af feedback til programmet.<\/figcaption><\/figure>\n<p>Klik p\u00e5 <strong>Gem<\/strong>, og navig\u00e9r til <strong>localhost:3000\/feedback\/test.txt<\/strong> for at se, om input er gemt med succes eller ej.<\/p>\n<figure id=\"attachment_151966\" aria-describedby=\"caption-attachment-151966\" style=\"width: 377px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/04\/persistent-storage-demo-confirming-stored-data.png\" alt=\"Screenshot: A browser with the submitted test.txt file open.\" width=\"377\" height=\"90\"><figcaption id=\"caption-attachment-151966\" class=\"wp-caption-text\">Succesfuld feedback bekr\u00e6ftet.<\/figcaption><\/figure>\n<p>Fjern og genstart beholderen for at se, om input forbliver.<\/p>\n<pre><code class=\"language-bash\">docker stop feedback-app\ndocker start feedback-app<\/code><\/pre>\n<p>Hvis du nu bes\u00f8ger den samme URL, kan du se, at feedbacken stadig er der. Men hvad sker der, hvis du fjerner containeren og genstarter den?<\/p>\n<pre><code class=\"language-bash\">docker stop feedback-app\ndocker rm feedback-app\ndocker run -d -p 3000:80 --name feedback-app feedback-node:volumes<\/code><\/pre>\n<p>Hvis du vender tilbage til den p\u00e5g\u00e6ldende <a href=\"https:\/\/kinsta.com\/blog\/what-is-a-url\/\">URL<\/a>, n\u00e5r den er genstartet, eksisterer den ikke l\u00e6ngere, fordi dataene gik tabt, da du fjernede containeren. Volumedata forbliver kun ved, n\u00e5r du stopper containeren, ikke n\u00e5r du fjerner den.<\/p>\n<figure style=\"width: 362px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/04\/persistent-storage-demo-data-not-available.png\" alt=\"Feedbackdata er g\u00e5et tabt.\" width=\"362\" height=\"89\"><figcaption class=\"wp-caption-text\">Feedbackdata er g\u00e5et tabt.<\/figcaption><\/figure>\n<p>Hvis du vil afhj\u00e6lpe dette problem og bevare dataene, selv n\u00e5r du fjerner containeren, skal du bruge vedvarende volumenlagring eller navngiven lagring. F\u00f8rst skal du rydde op i containerne og billederne.<\/p>\n<pre><code class=\"language-bash\">docker stop feedback-app\ndocker rm feedback-app\ndocker rmi feedback-node:volumes<\/code><\/pre>\n<h3>S\u00e5dan bruger du \u00e5ersistent volume storage<\/h3>\n<p>F\u00f8r du tester dette, skal du fjerne VOLUME-attributten fra Dockerfilen og genopbygge aftrykket.<\/p>\n<figure style=\"width: 566px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/04\/persistent-storage-demo-editing-docker-file.png\" alt=\"Sk\u00e6rmbillede: Dockerfile redigeret for at fjerne VOLUME-attributten.\" width=\"566\" height=\"371\"><figcaption class=\"wp-caption-text\">Opdateret Dockerfile for at fjerne VOLUME-attributten.<\/figcaption><\/figure>\n<pre><code class=\"language-bash\">docker build -t feedback-node:volumes .\ndocker run -d -p 3000:80 --name feedback-app -v feedback:\/app\/feedback feedback-node:volumes<\/code><\/pre>\n<p>Som du kan se, bruger du i den anden kommando <code>-v<\/code> -flaget til at definere den vedvarende volumen uden for containeren, som best\u00e5r, selv n\u00e5r du fjerner containeren.<\/p>\n<p>Ligesom i det foreg\u00e5ende trin skal du pr\u00f8ve at tilf\u00f8je feedback og f\u00e5 adgang til den, n\u00e5r du stopper, fjerner og genstarter containeren.<\/p>\n<figure style=\"width: 507px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/04\/persistent-storage-demo-test-external-volume.png\" alt=\"Sk\u00e6rmbillede: Indtastning af tekst i demoapplikationens feedbackformular.\" width=\"507\" height=\"554\"><figcaption class=\"wp-caption-text\">Tilf\u00f8jelse af ny feedback til en persistenstest.<\/figcaption><\/figure>\n<pre><code class=\"language-bash\">docker stop feedback-app\ndocker rm feedback-app\ndocker run -d -p 3000:80 --name feedback-app -v feedback:\/app\/feedback feedback-node:volumes<\/code><\/pre>\n<p>Som du kan se, er dataene tilg\u00e6ngelige, selv efter at du har stoppet og fjernet containeren, og de forbliver.<\/p>\n<figure id=\"attachment_151970\" aria-describedby=\"caption-attachment-151970\" style=\"width: 462px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/04\/persistent-storage-demo-confirm-external-volume-data.png\" alt=\"Screenshot: Browser that has successfully opened the second test file.\" width=\"462\" height=\"108\"><figcaption id=\"caption-attachment-151970\" class=\"wp-caption-text\">Efter at containeren er stoppet og fjernet, er dataene stadig tilg\u00e6ngelige.<\/figcaption><\/figure>\n\n<h2>Oversigt<\/h2>\n<p>Persistent storage er afg\u00f8rende for containeriserede applikationer, fordi det g\u00f8r det muligt at persistere data uden for en containers livscyklus. De 2 hovedtyper af persistent storage til containeriserede applikationer er volumener og bind mounts, som hver is\u00e6r har deres fordele og anvendelsesmuligheder.<\/p>\n<p>Volumes er gemt i containerens filsystem, mens bind mounts er direkte tilg\u00e6ngelige p\u00e5 hostsmaskinen.<\/p>\n<p>Persistent storage g\u00f8r det muligt at dele data mellem containere, hvilket g\u00f8r det muligt at opbygge komplekse applikationer med flere niveauer. Persistent storage er afg\u00f8rende for at sikre stabilitet og kontinuitet i containeriserede applikationer og giver en p\u00e5lidelig og fleksibel m\u00e5de at opbevare vigtige data p\u00e5.<\/p>\n<p>Udvikler du en applikation, der kr\u00e6ver vedvarende lagring? Gennemse vores bibliotek med <a href=\"https:\/\/docs.sevalla.com\/templates\/overview\">eksempler p\u00e5 hurtig start<\/a> for at se, hvordan du implementerer din applikation til Kinsta fra Git-host som <a href=\"https:\/\/kinsta.com\/dk\/changelog\/bitbucket-gitlab-support\/\">GitHub, GitLab og Bitbucket<\/a>. Vores officielle <a href=\"https:\/\/docs.sevalla.com\/applications\/storage\">Persistent Storage-dokumentation<\/a> hj\u00e6lper dig med at f\u00e5 din applikation og dens data online hurtigt.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Persistent storage henviser til opbevaring af data p\u00e5 en ikke-flygtig m\u00e5de, s\u00e5 de forbliver tilg\u00e6ngelige, selv efter at en enhed eller en applikation er slukket eller &#8230;<\/p>\n","protected":false},"author":259,"featured_media":50224,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[],"topic":[684],"class_list":["post-50223","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","topic-cloud-hosting"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.6 (Yoast SEO v24.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Persistent storage: Langtidshukommelse i containernes \u00e6ra - Kinsta\u00ae<\/title>\n<meta name=\"description\" content=\"Persistent storage plejede kun at v\u00e6re diskdrev og databaser, men containerbaseret udvikling tilf\u00f8jer en ny vinkel p\u00e5 ikke-flygtige data.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/\" \/>\n<meta property=\"og:locale\" content=\"da_DK\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Persistent Storage: Langtidshukommelse i en tid med containere\" \/>\n<meta property=\"og:description\" content=\"Persistent storage plejede kun at v\u00e6re diskdrev og databaser, men containerbaseret udvikling tilf\u00f8jer en ny vinkel p\u00e5 ikke-flygtige data.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/\" \/>\n<meta property=\"og:site_name\" content=\"Kinsta\u00ae\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Kinsta-Danmark-122855885298660\/\" \/>\n<meta property=\"article:published_time\" content=\"2023-04-24T10:58:59+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-08-24T09:18:44+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinsta.com\/dk\/wp-content\/uploads\/sites\/12\/2023\/04\/persistent-storage.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1600\" \/>\n\t<meta property=\"og:image:height\" content=\"800\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Steve Bonisteel\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"Persistent storage plejede kun at v\u00e6re diskdrev og databaser, men containerbaseret udvikling tilf\u00f8jer en ny vinkel p\u00e5 ikke-flygtige data.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinsta.com\/dk\/wp-content\/uploads\/sites\/12\/2023\/04\/persistent-storage.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@kinsta_dk\" \/>\n<meta name=\"twitter:site\" content=\"@kinsta_dk\" \/>\n<meta name=\"twitter:label1\" content=\"Skrevet af\" \/>\n\t<meta name=\"twitter:data1\" content=\"Steve Bonisteel\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimeret l\u00e6setid\" \/>\n\t<meta name=\"twitter:data2\" content=\"11 minutter\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/\"},\"author\":{\"name\":\"Steve Bonisteel\",\"@id\":\"https:\/\/kinsta.com\/dk\/#\/schema\/person\/d84ceff87bd64a4368a581fc8aa8bd6f\"},\"headline\":\"Persistent Storage: Langtidshukommelse i en tid med containere\",\"datePublished\":\"2023-04-24T10:58:59+00:00\",\"dateModified\":\"2023-08-24T09:18:44+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/\"},\"wordCount\":2021,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/dk\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/dk\/wp-content\/uploads\/sites\/12\/2023\/04\/persistent-storage.jpg\",\"inLanguage\":\"da-DK\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/\",\"url\":\"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/\",\"name\":\"Persistent storage: Langtidshukommelse i containernes \u00e6ra - Kinsta\u00ae\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/dk\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/dk\/wp-content\/uploads\/sites\/12\/2023\/04\/persistent-storage.jpg\",\"datePublished\":\"2023-04-24T10:58:59+00:00\",\"dateModified\":\"2023-08-24T09:18:44+00:00\",\"description\":\"Persistent storage plejede kun at v\u00e6re diskdrev og databaser, men containerbaseret udvikling tilf\u00f8jer en ny vinkel p\u00e5 ikke-flygtige data.\",\"breadcrumb\":{\"@id\":\"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/#breadcrumb\"},\"inLanguage\":\"da-DK\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"da-DK\",\"@id\":\"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/#primaryimage\",\"url\":\"https:\/\/kinsta.com\/dk\/wp-content\/uploads\/sites\/12\/2023\/04\/persistent-storage.jpg\",\"contentUrl\":\"https:\/\/kinsta.com\/dk\/wp-content\/uploads\/sites\/12\/2023\/04\/persistent-storage.jpg\",\"width\":1600,\"height\":800},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinsta.com\/dk\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Cloud hosting\",\"item\":\"https:\/\/kinsta.com\/dk\/emner\/cloud-hosting\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Persistent Storage: Langtidshukommelse i en tid med containere\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kinsta.com\/dk\/#website\",\"url\":\"https:\/\/kinsta.com\/dk\/\",\"name\":\"Kinsta\u00ae\",\"description\":\"Hurtig, sikker, premium hostingl\u00f8sninger\",\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/dk\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kinsta.com\/dk\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"da-DK\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kinsta.com\/dk\/#organization\",\"name\":\"Kinsta\",\"url\":\"https:\/\/kinsta.com\/dk\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"da-DK\",\"@id\":\"https:\/\/kinsta.com\/dk\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kinsta.com\/dk\/wp-content\/uploads\/sites\/12\/2023\/12\/kinsta-logo.jpeg\",\"contentUrl\":\"https:\/\/kinsta.com\/dk\/wp-content\/uploads\/sites\/12\/2023\/12\/kinsta-logo.jpeg\",\"width\":500,\"height\":500,\"caption\":\"Kinsta\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/dk\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/Kinsta-Danmark-122855885298660\/\",\"https:\/\/x.com\/kinsta_dk\",\"https:\/\/www.instagram.com\/kinstahosting\/\",\"https:\/\/www.linkedin.com\/company\/kinsta\/\",\"https:\/\/www.pinterest.com\/kinstahosting\/\",\"https:\/\/www.youtube.com\/c\/Kinsta\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/kinsta.com\/dk\/#\/schema\/person\/d84ceff87bd64a4368a581fc8aa8bd6f\",\"name\":\"Steve Bonisteel\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"da-DK\",\"@id\":\"https:\/\/kinsta.com\/dk\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0adffb3f9c86a6ec8245f8399d540823?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0adffb3f9c86a6ec8245f8399d540823?s=96&d=mm&r=g\",\"caption\":\"Steve Bonisteel\"},\"description\":\"Steve Bonisteel is a Technical Editor at Kinsta who began his writing career as a print journalist, chasing ambulances and fire trucks. He has been covering Internet-related technology since the late 1990s.\",\"url\":\"https:\/\/kinsta.com\/dk\/blog\/author\/stevebonisteel\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Persistent storage: Langtidshukommelse i containernes \u00e6ra - Kinsta\u00ae","description":"Persistent storage plejede kun at v\u00e6re diskdrev og databaser, men containerbaseret udvikling tilf\u00f8jer en ny vinkel p\u00e5 ikke-flygtige data.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/","og_locale":"da_DK","og_type":"article","og_title":"Persistent Storage: Langtidshukommelse i en tid med containere","og_description":"Persistent storage plejede kun at v\u00e6re diskdrev og databaser, men containerbaseret udvikling tilf\u00f8jer en ny vinkel p\u00e5 ikke-flygtige data.","og_url":"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/Kinsta-Danmark-122855885298660\/","article_published_time":"2023-04-24T10:58:59+00:00","article_modified_time":"2023-08-24T09:18:44+00:00","og_image":[{"width":1600,"height":800,"url":"https:\/\/kinsta.com\/dk\/wp-content\/uploads\/sites\/12\/2023\/04\/persistent-storage.jpg","type":"image\/jpeg"}],"author":"Steve Bonisteel","twitter_card":"summary_large_image","twitter_description":"Persistent storage plejede kun at v\u00e6re diskdrev og databaser, men containerbaseret udvikling tilf\u00f8jer en ny vinkel p\u00e5 ikke-flygtige data.","twitter_image":"https:\/\/kinsta.com\/dk\/wp-content\/uploads\/sites\/12\/2023\/04\/persistent-storage.jpg","twitter_creator":"@kinsta_dk","twitter_site":"@kinsta_dk","twitter_misc":{"Skrevet af":"Steve Bonisteel","Estimeret l\u00e6setid":"11 minutter"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/#article","isPartOf":{"@id":"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/"},"author":{"name":"Steve Bonisteel","@id":"https:\/\/kinsta.com\/dk\/#\/schema\/person\/d84ceff87bd64a4368a581fc8aa8bd6f"},"headline":"Persistent Storage: Langtidshukommelse i en tid med containere","datePublished":"2023-04-24T10:58:59+00:00","dateModified":"2023-08-24T09:18:44+00:00","mainEntityOfPage":{"@id":"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/"},"wordCount":2021,"commentCount":0,"publisher":{"@id":"https:\/\/kinsta.com\/dk\/#organization"},"image":{"@id":"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/dk\/wp-content\/uploads\/sites\/12\/2023\/04\/persistent-storage.jpg","inLanguage":"da-DK","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/","url":"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/","name":"Persistent storage: Langtidshukommelse i containernes \u00e6ra - Kinsta\u00ae","isPartOf":{"@id":"https:\/\/kinsta.com\/dk\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/#primaryimage"},"image":{"@id":"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/dk\/wp-content\/uploads\/sites\/12\/2023\/04\/persistent-storage.jpg","datePublished":"2023-04-24T10:58:59+00:00","dateModified":"2023-08-24T09:18:44+00:00","description":"Persistent storage plejede kun at v\u00e6re diskdrev og databaser, men containerbaseret udvikling tilf\u00f8jer en ny vinkel p\u00e5 ikke-flygtige data.","breadcrumb":{"@id":"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/#breadcrumb"},"inLanguage":"da-DK","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/"]}]},{"@type":"ImageObject","inLanguage":"da-DK","@id":"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/#primaryimage","url":"https:\/\/kinsta.com\/dk\/wp-content\/uploads\/sites\/12\/2023\/04\/persistent-storage.jpg","contentUrl":"https:\/\/kinsta.com\/dk\/wp-content\/uploads\/sites\/12\/2023\/04\/persistent-storage.jpg","width":1600,"height":800},{"@type":"BreadcrumbList","@id":"https:\/\/kinsta.com\/dk\/blog\/persistent-storage\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinsta.com\/dk\/"},{"@type":"ListItem","position":2,"name":"Cloud hosting","item":"https:\/\/kinsta.com\/dk\/emner\/cloud-hosting\/"},{"@type":"ListItem","position":3,"name":"Persistent Storage: Langtidshukommelse i en tid med containere"}]},{"@type":"WebSite","@id":"https:\/\/kinsta.com\/dk\/#website","url":"https:\/\/kinsta.com\/dk\/","name":"Kinsta\u00ae","description":"Hurtig, sikker, premium hostingl\u00f8sninger","publisher":{"@id":"https:\/\/kinsta.com\/dk\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kinsta.com\/dk\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"da-DK"},{"@type":"Organization","@id":"https:\/\/kinsta.com\/dk\/#organization","name":"Kinsta","url":"https:\/\/kinsta.com\/dk\/","logo":{"@type":"ImageObject","inLanguage":"da-DK","@id":"https:\/\/kinsta.com\/dk\/#\/schema\/logo\/image\/","url":"https:\/\/kinsta.com\/dk\/wp-content\/uploads\/sites\/12\/2023\/12\/kinsta-logo.jpeg","contentUrl":"https:\/\/kinsta.com\/dk\/wp-content\/uploads\/sites\/12\/2023\/12\/kinsta-logo.jpeg","width":500,"height":500,"caption":"Kinsta"},"image":{"@id":"https:\/\/kinsta.com\/dk\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Kinsta-Danmark-122855885298660\/","https:\/\/x.com\/kinsta_dk","https:\/\/www.instagram.com\/kinstahosting\/","https:\/\/www.linkedin.com\/company\/kinsta\/","https:\/\/www.pinterest.com\/kinstahosting\/","https:\/\/www.youtube.com\/c\/Kinsta"]},{"@type":"Person","@id":"https:\/\/kinsta.com\/dk\/#\/schema\/person\/d84ceff87bd64a4368a581fc8aa8bd6f","name":"Steve Bonisteel","image":{"@type":"ImageObject","inLanguage":"da-DK","@id":"https:\/\/kinsta.com\/dk\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/0adffb3f9c86a6ec8245f8399d540823?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0adffb3f9c86a6ec8245f8399d540823?s=96&d=mm&r=g","caption":"Steve Bonisteel"},"description":"Steve Bonisteel is a Technical Editor at Kinsta who began his writing career as a print journalist, chasing ambulances and fire trucks. He has been covering Internet-related technology since the late 1990s.","url":"https:\/\/kinsta.com\/dk\/blog\/author\/stevebonisteel\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinsta.com\/dk\/wp-json\/wp\/v2\/posts\/50223","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kinsta.com\/dk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kinsta.com\/dk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kinsta.com\/dk\/wp-json\/wp\/v2\/users\/259"}],"replies":[{"embeddable":true,"href":"https:\/\/kinsta.com\/dk\/wp-json\/wp\/v2\/comments?post=50223"}],"version-history":[{"count":11,"href":"https:\/\/kinsta.com\/dk\/wp-json\/wp\/v2\/posts\/50223\/revisions"}],"predecessor-version":[{"id":51843,"href":"https:\/\/kinsta.com\/dk\/wp-json\/wp\/v2\/posts\/50223\/revisions\/51843"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinsta.com\/dk\/wp-json\/kinsta\/v1\/posts\/50223\/translations\/en"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinsta.com\/dk\/wp-json\/kinsta\/v1\/posts\/50223\/translations\/it"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinsta.com\/dk\/wp-json\/kinsta\/v1\/posts\/50223\/translations\/pt"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinsta.com\/dk\/wp-json\/kinsta\/v1\/posts\/50223\/translations\/fr"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinsta.com\/dk\/wp-json\/kinsta\/v1\/posts\/50223\/translations\/de"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinsta.com\/dk\/wp-json\/kinsta\/v1\/posts\/50223\/translations\/jp"},{"embeddable":true,"hreflang":"nl","title":"Dutch","href":"https:\/\/kinsta.com\/dk\/wp-json\/kinsta\/v1\/posts\/50223\/translations\/nl"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinsta.com\/dk\/wp-json\/kinsta\/v1\/posts\/50223\/translations\/es"},{"embeddable":true,"hreflang":"sv","title":"Swedish","href":"https:\/\/kinsta.com\/dk\/wp-json\/kinsta\/v1\/posts\/50223\/translations\/se"},{"embeddable":true,"hreflang":"da","title":"Danish","href":"https:\/\/kinsta.com\/dk\/wp-json\/kinsta\/v1\/posts\/50223\/translations\/dk"},{"href":"https:\/\/kinsta.com\/dk\/wp-json\/kinsta\/v1\/posts\/50223\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinsta.com\/dk\/wp-json\/wp\/v2\/media\/50224"}],"wp:attachment":[{"href":"https:\/\/kinsta.com\/dk\/wp-json\/wp\/v2\/media?parent=50223"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinsta.com\/dk\/wp-json\/wp\/v2\/tags?post=50223"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinsta.com\/dk\/wp-json\/wp\/v2\/topic?post=50223"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}