Posiadanie ładnej pętli sprzężenia zwrotnego lokalnego rozwoju jest tematem szybkiego rozwoju w ekosystemie Kubernetes.
Rozstrzygając to pytanie, jest kilka narzędzi, które moim zdaniem dobrze wspierają ten cel.
Docker for Mac Kubernetes
Docker for Mac Kubernetes ( Docker Desktop to ogólna nazwa międzyplatformowa) stanowi doskonałą opcję do lokalnego programowania. Do wirtualizacji używa HyperKit, który jest zbudowany na natywnej strukturze Hypervisora w macOS zamiast VirtualBox.
Funkcja Kubernetes została po raz pierwszy wydana w wersji beta na kanale brzegowym w styczniu 2018 r. I od tego czasu przeszła długą drogę, stając się certyfikowanym Kubernetesem w kwietniu 2018 r. I przechodząc do wersji stabilnej w lipcu 2018 r .
Z mojego doświadczenia wynika, że praca z Minikube jest o wiele łatwiejsza, szczególnie na macOS, a zwłaszcza w przypadku problemów takich jak RBAC, Helm, hiperwizor, prywatny rejestr itp.
Hełm
Jeśli chodzi o dystrybucję kodu i lokalne pobieranie aktualizacji, Helm jest jedną z najpopularniejszych opcji. Możesz publikować swoje aplikacje za pośrednictwem ciągłej integracji / ciągłego wdrażania jako wykresy Helm (a także podstawowe obrazy platformy Docker, do których się odnoszą). Następnie możesz pobrać te wykresy lokalnie z rejestru wykresów Helm i przeprowadzić uaktualnienie w lokalnym klastrze.
Wersja robocza Azure
Możesz również użyć narzędzia takiego jak Azure Draft, aby wykonać proste wdrożenia lokalne i wygenerować podstawowe wykresy Helm na podstawie szablonów wspólnego języka, podobnie jak pakiety kompilacji, w celu zautomatyzowania tego elementu układanki.
Skaffold
Skaffold jest podobny do Azure Draft, ale jest bardziej dojrzały, ma znacznie szerszy zakres i został stworzony przez Google. Ma bardzo łatwo podłączalną architekturę. Myślę, że w przyszłości więcej osób będzie go używać do lokalnego tworzenia aplikacji dla Kubernetes.
Jeśli używałeś Reacta, myślę o Skaffoldzie jako „ Utwórz aplikację React dla Kubernetes”.
Komponuj lub twórz na Kubernetes
Docker Compose , choć niezwiązany z Kubernetes, jest jedną z alternatyw, z której korzystają niektóre firmy, aby zapewnić proste, łatwe i przenośne lokalne środowisko programistyczne, analogiczne do środowiska Kubernetes, które działają w środowisku produkcyjnym. Jednak pójście tą drogą oznacza odejście od konfiguracji produkcji i lokalnego rozwoju.
Kompose to konwerter Docker Compose na Kubernetes. Może to być przydatna ścieżka dla kogoś, kto już uruchamia swoje aplikacje jako kolekcje kontenerów lokalnie.
Compose on Kubernetes to niedawno otwarta (grudzień 2018 r.) Oferta firmy Docker, która umożliwia wdrażanie plików Docker Compose bezpośrednio w klastrze Kubernetes za pośrednictwem niestandardowego kontrolera.