{"id":102088,"date":"2021-11-01T03:02:09","date_gmt":"2021-11-01T01:02:09","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/kak-odin-startap-ot-docker-compose-do-kubernetes-dobiralsya"},"modified":"2021-11-01T14:22:04","modified_gmt":"2021-11-01T12:22:04","slug":"kak-odin-startap-ot-docker-compose-do-kubernetes-dobiralsya","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/kak-odin-startap-ot-docker-compose-do-kubernetes-dobiralsya","title":{"rendered":"Hvordan en startup n\u00e5ede fra docker-compose til Kubernetes","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<div>\n<p>I denne artikel vil jeg gerne fort\u00e6lle om, hvordan vi \u00e6ndrede vores tilgang til orkestrering p\u00e5 vores startup-projekt, hvorfor vi gjorde det, og hvilke problemer vi l\u00f8ste undervejs. Denne artikel kan n\u00e6ppe p\u00e5st\u00e5 at v\u00e6re unik, men jeg tror stadig, at den kan v\u00e6re nyttig for nogen, da vi samlede materialet undervejs med en vis anstrengelse. \u00a0<\/p>\n<p><strong>Hvad havde vi, og hvad handler det overhovedet om?<\/strong> Vi havde et startup-projekt med omtrent 2 \u00e5rs udviklingshistorie inden for reklameomr\u00e5det. Projektet blev oprindeligt bygget som en mikrotjeneste, og den serverbaserede del er skrevet i Symfony + lidt Laravel, Django og nativen NodeJs. Tjenesterne fungerer prim\u00e6rt som API til mobilklienter (der er 3 i projektet) og vores eget SDK til iOS (indg\u00e5r i apps for vores kunder), samt webgr\u00e6nseflader og forskellige dashboards for de samme kunder. Alle tjenester var oprindeligt dockeriserede og arbejdede under docker-compose.<\/p>\n<p>Sandt at sige blev docker-compose ikke brugt overalt, men kun i udviklernes lokale milj\u00f8, ved test <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/da\/server\/dts-newyork\/\"   title=\"serveren\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"2684\">serveren<\/a> og i pipeline under opbygning og test af tjenesterne. I produktionsmilj\u00f8et blev Google Kubernetes Engine (GKE) benyttet. Desuden blev ops\u00e6tningen af GKE i starten af projektet gjort helt via dets webgr\u00e6nseflade, hvilket var ret hurtigt og, som vi dengang troede, praktisk. Kun opbygningen af docker images til k\u00f8rsel af tjenester i GKE var automatiseret.<\/p>\n<p> <a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/586594\/?utm_campaign=586594&amp;utm_source=habrahabr&amp;utm_medium=rss#habracut\">L\u00e6s videre<\/a><\/div>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u0445\u043e\u0442\u0435\u043b \u0431\u044b \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u0442\u044c \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u043c\u044b \u043c\u0435\u043d\u044f\u043b\u0438 \u043f\u043e\u0434\u0445\u043e\u0434 \u043a \u043e\u0440\u043a\u0435\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043d\u0430 \u043d\u0430\u0448\u0435\u043c \u0441\u0442\u0430\u0440\u0442\u0430\u043f-\u043f\u0440\u043e\u0435\u043a\u0442\u0435, \u0437\u0430\u0447\u0435\u043c \u043c\u044b \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u043b\u0438 \u0438 \u043a\u0430\u043a\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u043f\u043e \u0434\u043e\u0440\u043e\u0433\u0435 \u0440\u0435\u0448\u0430\u043b\u0438. \u041f\u0440\u0435\u0442\u0435\u043d\u0434\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u044d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u0432\u0440\u044f\u0434 \u043b\u0438 \u043c\u043e\u0436\u0435\u0442, \u043d\u043e \u0432\u0441\u0435 \u0436\u0435 \u0434\u0443\u043c\u0430\u044e, \u0447\u0442\u043e \u043e\u043d\u0430 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043a\u043e\u043c\u0443-\u0442\u043e \u043f\u043e\u043b\u0435\u0437\u043d\u0430, \u0442\u0430\u043a \u043a\u0430\u043a \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u0434\u0430\u0447\u0438 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b \u0441\u043e\u0431\u0438\u0440\u0430\u043b\u0441\u044f \u043d\u0430\u043c\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-102088","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u0445\u043e\u0442\u0435\u043b \u0431\u044b \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u0442\u044c \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u043c\u044b \u043c\u0435\u043d\u044f\u043b\u0438 \u043f\u043e\u0434\u0445\u043e\u0434 \u043a \u043e\u0440\u043a\u0435\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043d\u0430 \u043d\u0430\u0448\u0435\u043c \u0441\u0442\u0430\u0440\u0442\u0430\u043f-\u043f\u0440\u043e\u0435\u043a\u0442\u0435, \u0437\u0430\u0447\u0435\u043c \u043c\u044b \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u043b\u0438 \u0438 \u043a\u0430\u043a\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u043f\u043e \u0434\u043e\u0440\u043e\u0433\u0435 \u0440\u0435\u0448\u0430\u043b\u0438.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/kak-odin-startap-ot-docker-compose-do-kubernetes-dobiralsya\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041a\u0430\u043a \u043e\u0434\u0438\u043d \u0441\u0442\u0430\u0440\u0442\u0430\u043f \u043e\u0442 docker-compose \u0434\u043e Kubernetes \u0434\u043e\u0431\u0438\u0440\u0430\u043b\u0441\u044f | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u0445\u043e\u0442\u0435\u043b \u0431\u044b \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u0442\u044c \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u043c\u044b \u043c\u0435\u043d\u044f\u043b\u0438 \u043f\u043e\u0434\u0445\u043e\u0434 \u043a \u043e\u0440\u043a\u0435\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043d\u0430 \u043d\u0430\u0448\u0435\u043c \u0441\u0442\u0430\u0440\u0442\u0430\u043f-\u043f\u0440\u043e\u0435\u043a\u0442\u0435, \u0437\u0430\u0447\u0435\u043c \u043c\u044b \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u043b\u0438 \u0438 \u043a\u0430\u043a\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u043f\u043e \u0434\u043e\u0440\u043e\u0433\u0435 \u0440\u0435\u0448\u0430\u043b\u0438.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/kak-odin-startap-ot-docker-compose-do-kubernetes-dobiralsya\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2021-11-01T01:02:09+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2021-11-01T12:22:04+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Hvordan en startup kom fra docker-compose til Kubernetes | ProHoster","description":"I denne artikel vil jeg gerne fort\u00e6lle om, hvordan vi \u00e6ndrede vores tilgang til orkestrering p\u00e5 vores startup-projekt, hvorfor vi gjorde det, og hvilke problemer vi l\u00f8ste undervejs.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/kak-odin-startap-ot-docker-compose-do-kubernetes-dobiralsya","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041a\u0430\u043a \u043e\u0434\u0438\u043d \u0441\u0442\u0430\u0440\u0442\u0430\u043f \u043e\u0442 docker-compose \u0434\u043e Kubernetes \u0434\u043e\u0431\u0438\u0440\u0430\u043b\u0441\u044f | ProHoster","og:description":"\u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u0445\u043e\u0442\u0435\u043b \u0431\u044b \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u0442\u044c \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u043c\u044b \u043c\u0435\u043d\u044f\u043b\u0438 \u043f\u043e\u0434\u0445\u043e\u0434 \u043a \u043e\u0440\u043a\u0435\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043d\u0430 \u043d\u0430\u0448\u0435\u043c \u0441\u0442\u0430\u0440\u0442\u0430\u043f-\u043f\u0440\u043e\u0435\u043a\u0442\u0435, \u0437\u0430\u0447\u0435\u043c \u043c\u044b \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u043b\u0438 \u0438 \u043a\u0430\u043a\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u043f\u043e \u0434\u043e\u0440\u043e\u0433\u0435 \u0440\u0435\u0448\u0430\u043b\u0438.","og:url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/kak-odin-startap-ot-docker-compose-do-kubernetes-dobiralsya","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2021-11-01T01:02:09+00:00","article:modified_time":"2021-11-01T12:22:04+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"102088","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-11-01 01:05:10","updated":"2026-02-09 21:39:46","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/102088","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=102088"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/102088\/revisions"}],"predecessor-version":[{"id":159965,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/102088\/revisions\/159965"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=102088"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=102088"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=102088"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}