Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: Windows Server 2025, Windows Server 2022, Windows Server 2019, Windows Server 2016
Kontenery to technologia do tworzenia pakietów i uruchamiania aplikacji systemu Windows i Linux w różnych środowiskach lokalnych i w chmurze. Kontenery zapewniają lekkie, izolowane środowisko, które ułatwia tworzenie, wdrażanie i zarządzanie aplikacjami. Kontenery są uruchamiane i zatrzymywane szybko, co czyni je idealnym rozwiązaniem dla aplikacji, które muszą szybko dostosować się do zmieniającego się zapotrzebowania. Lekki charakter kontenerów sprawia również, że są one przydatnym narzędziem do zwiększania gęstości i wykorzystania infrastruktury.
Ekosystem kontenerów firmy Microsoft
Firma Microsoft udostępnia wiele narzędzi i platform, które ułatwiają tworzenie i wdrażanie aplikacji w kontenerach:
uruchamianie kontenerów opartych na systemie Windows lub Linux w systemie Windows 10 na potrzeby programowania i testowania przy użyciu Docker Desktop, co korzysta z funkcji kontenerów wbudowanych w system Windows. Można również uruchamiać kontenery natywnie w systemie Windows Server.
tworzenie, testowanie, publikowanie i wdrażanie kontenerów opartych na systemie Windows przy użyciu zaawansowanej obsługi kontenerów w programie Visual Studio i Visual Studio Code, które obejmują obsługę platformy Docker, narzędzia Docker Compose, Kubernetes, Helm i innych przydatnych technologii.
Publikowanie aplikacji jako obrazów kontenerów publicznej usłudze DockerHub dla innych użytkowników lub prywatnej usługi Azure Container Registry na potrzeby własnego programowania i wdrażania organizacji, wypychania i ściągania bezpośrednio z poziomu programów Visual Studio i Visual Studio Code.
Wdrażanie kontenerów na dużą skalę w usłudze Azure lub w innych chmurach:
Ściągaj aplikację z rejestru kontenerów, takiego jak usługa Azure Container Registry, a następnie wdrażaj ją i zarządzaj nią na dużą skalę przy użyciu orkiestratora, takiego jak usługa Azure Kubernetes Service (AKS).
Usługa Azure Kubernetes Service wdraża kontenery na maszynach wirtualnych platformy Azure i zarządza nimi na dużą skalę. Można uruchamiać dziesiątki, setki, a nawet tysiące kontenerów.
Maszyny wirtualne platformy Azure uruchamiają dostosowany obraz systemu Windows Server dla aplikacji opartych na systemie Windows lub dostosowany obraz systemu Ubuntu Linux dla aplikacji opartych na systemie Linux.
Wdrażanie kontenerów lokalnych przy użyciu usługi Azure Kubernetes Service (AKS) włączonej przez usługę Azure Arc, aparat usługi AKS w usłudze Azure Stack Hub lub usługę Azure Stack Hub za pomocą rozwiązania OpenShift. Możesz również skonfigurować rozwiązanie Kubernetes samodzielnie w systemie Windows Server. Aby uzyskać więcej informacji, zobacz Kubernetes w systemie Windows. Firma Microsoft opracowuje również obsługę kontenerów systemu Windows na platformie kontenerów RedHat OpenShift.
Jak działają kontenery
Kontener to izolowany, lekki pakiet do uruchamiania aplikacji w systemie operacyjnym hosta. Kontenery działają ponad jądrem systemu operacyjnego hosta (które można traktować jako ukrytą infrastrukturę systemu operacyjnego), jak pokazano na poniższym diagramie.
architektoniczny diagram
Chociaż kontener współdzieli jądro systemu operacyjnego hosta, nie uzyskuje do niego nieograniczonego dostępu. Zamiast tego kontener pobiera izolowany i w niektórych przypadkach zwirtualizowany widok systemu. Na przykład kontener może uzyskać dostęp do zwirtualizowanej wersji systemu plików i rejestru, ale wszelkie zmiany wpływają tylko na kontener i są odrzucane po zatrzymaniu. Aby zapisać dane, kontener może zainstalować magazyn trwały, taki jak Azure Disk lub udział plików, taki jak Azure Files.
Kontener jest oparty na jądrze, ale jądro nie zapewnia wszystkich interfejsów API i usług, których aplikacja musi uruchomić. Większość z tych interfejsów API i usług pochodzi z plików systemowych (bibliotek), które działają powyżej jądra w trybie użytkownika. Ponieważ kontener jest odizolowany od środowiska trybu użytkownika hosta, kontener potrzebuje własnej kopii tych plików systemowych trybu użytkownika. Te pliki są pakowane w coś znanego jako obraz podstawowy. Obraz podstawowy służy jako warstwa podstawowa, na której tworzysz kontener, zapewniając mu usługi systemu operacyjnego, które nie są udostępniane przez jądro.
Kontenery a maszyny wirtualne
W przeciwieństwie do kontenera maszyna wirtualna uruchamia kompletny system operacyjny, w tym własne jądro, jak pokazano na poniższym diagramie.
diagram architektury
Kontenery i maszyny wirtualne mają swoje zastosowania. W rzeczywistości wiele wdrożeń kontenerów używa maszyn wirtualnych jako systemu operacyjnego hosta, a nie uruchamiania bezpośrednio na sprzęcie, zwłaszcza w przypadku uruchamiania kontenerów w chmurze.
Aby uzyskać więcej informacji na temat podobieństw i różnic w tych uzupełniających technologiach, zobacz Kontenery a maszyny wirtualne.
Obrazy kontenerów
Wszystkie kontenery są tworzone na podstawie obrazów kontenerów. Obraz kontenera to pakiet plików zorganizowanych w stos warstw, który znajduje się na komputerze lokalnym lub w zdalnym rejestrze kontenerów. Obraz kontenera składa się z plików systemu operacyjnego trybu użytkownika, które aplikacja musi uruchomić. Obraz zawiera również środowiska uruchomieniowe aplikacji, zależności i pliki konfiguracyjne wymagane przez aplikację.
Firma Microsoft oferuje kilka obrazów (nazywanych obrazami podstawowymi), których można użyć jako punktu początkowego do utworzenia własnego obrazu kontenera:
- Windows — zawiera pełny zestaw interfejsów API systemu Windows i usług systemowych (minus role serwera).
- Windows Server — zawiera pełny zestaw interfejsów API systemu Windows i usług systemowych.
- Windows Server Core — mniejszy obraz, który zawiera podzbiór interfejsów API systemu Windows Server — czyli pełną platformę .NET. Obejmuje ona również większość, ale nie wszystkie role serwera (na przykład serwer faksów nie jest dołączony).
- Nano Server — to najmniejszy obraz systemu Windows Server, który obejmuje obsługę interfejsów API platformy .NET Core oraz niektórych ról serwera.
Obrazy kontenerów składają się z serii warstw. Każda warstwa zawiera zestaw plików, które po połączeniu ze sobą reprezentują obraz kontenera. Ze względu na warstwowy charakter kontenerów, nie zawsze musisz kierować się obrazem podstawowym, aby zbudować kontener systemu Windows. Zamiast tego można określić inny obraz, który już zawiera odpowiednią strukturę. Na przykład zespół .NET publikuje obraz platformy .NET Core, który zawiera środowisko uruchomieniowe platformy .NET Core. Dzięki temu użytkownicy nie muszą duplikować procesu instalowania platformy .NET Core — zamiast tego mogą ponownie używać warstw tego obrazu kontenera. Sam obraz platformy .NET Core jest oparty na serwerze Nano Server.
Aby uzyskać więcej informacji, zobacz Container Base Images (Obrazy podstawowe kontenerów).
Użytkownicy kontenerów
Kontenery dla deweloperów
Kontenery pomagają deweloperom tworzyć i dostarczać aplikacje o wyższej jakości, szybciej. Dzięki kontenerom deweloperzy mogą utworzyć obraz kontenera, który jest wdrażany w sekundach, identycznie w różnych środowiskach. Kontenery działają jako łatwy mechanizm udostępniania kodu między zespołami i uruchamiania środowiska deweloperskiego bez wpływu na system plików hosta.
Kontenery są przenośne i uniwersalne, mogą uruchamiać aplikacje napisane w dowolnym języku i są zgodne z dowolnym komputerem z systemem Windows 10 w wersji 1607 lub nowszej lub Windows Server 2016 lub nowszej. Deweloperzy mogą tworzyć i testować kontener lokalnie na laptopie lub komputerze stacjonarnym, a następnie wdrażać ten sam obraz kontenera w chmurze prywatnej firmy, chmurze publicznej lub dostawcy usług. Naturalna zwinność kontenerów wspiera nowoczesne wzorce projektowania aplikacji w zwirtualizowanych środowiskach chmurowych na dużą skalę. Najbardziej przydatną korzyścią dla deweloperów jest być może możliwość odizolowania środowiska tak, aby aplikacja zawsze pobierała wersję bibliotek, które określisz, unikając konfliktów z zależnościami.
Kontenery dla specjalistów IT
Kontenery ułatwiają administratorom tworzenie infrastruktury, która jest łatwiejsza do aktualizowania i konserwacji, a także w pełni wykorzystuje zasoby sprzętowe. Specjaliści IT mogą używać kontenerów, aby zapewnić ustandaryzowane środowiska dla swoich zespołów programistycznych, qa i produkcyjnych. Korzystając z kontenerów, administratorzy systemów abstrahują różnice w instalacjach systemów operacyjnych oraz od podstawowej infrastruktury.
Możesz również użyć trybu interaktywnego kontenerów, aby uruchomić kolidujące instancje narzędzia wiersza polecenia na tym samym systemie.
Orkiestracja kontenerów
Orkiestratory są krytycznym elementem infrastruktury podczas konfigurowania środowiska opartego na kontenerach. Orkiestratory są niezbędne podczas zarządzania konteneryzowanymi aplikacjami na dużą skalę. Chociaż można ręcznie zarządzać kilkoma kontenerami przy użyciu platformy Docker i systemu Windows, aplikacje często korzystają z pięciu, dziesięciu lub nawet setek kontenerów, co sprawia, że orkiestratory są niezbędne.
Orkiestratory kontenerów zostały utworzone w celu ułatwienia zarządzania kontenerami na dużą skalę i w środowisku produkcyjnym. Orkiestratory udostępniają następujące funkcje:
Orkiestratory ułatwiają rozwijanie konteneryzowanych aplikacji na dużą skalę, zapewniając funkcjonalność:
- Wdrażanie na dużą skalę
- Planowanie obciążeń
- Monitorowanie kondycji
- Przełączanie w tryb failover w przypadku awarii węzła
- Skalowanie w górę lub w dół
- Sieć
- Odnajdywanie usług
- Koordynowanie uaktualnień aplikacji
- Koligacja węzła klastra
Istnieje wiele różnych koordynatorów, których można używać z kontenerami systemu Windows; Poniżej przedstawiono opcje dostępne przez firmę Microsoft:
- azure Kubernetes Service (AKS) — używanie zarządzanej usługi Azure Kubernetes
- Azure Kubernetes Service (AKS) na platformie Azure Stack HCI — używaj usługi Azure Kubernetes Service lokalnie
Testowanie kontenerów w systemie Windows
Aby rozpocząć pracę z kontenerami w systemie Windows Server lub Windows 10, zobacz następujący artykuł:
Aby uzyskać pomoc dotyczącą decydowania o tym, które usługi platformy Azure są odpowiednie dla danego scenariusza, zobacz Usługi kontenerów platformy Azure i Wybieranie usług platformy Azure do hostowania aplikacji.
Zasoby
Aby wyświetlić zasoby do korzystania z kontenerów systemu Windows Server, zobacz następujące zasoby:
Aby uzyskać informacje o aktualnych problemach i planowanych aktualizacjach funkcji, odwiedź repozytorium GitHub dotyczące kontenerów Windows.
Zapoznaj się z blogem: Blog kontenerów systemu Windows.
Aby skontaktować się z zespołem kontenerów systemu Windows Server, wyślij wiadomość e-mail do grupy klienci kontenerów systemu Windows .