Docker. Niezawodne kontenery produkcyjne. Praktyczne zastosowania. Wydanie 3 - ebook
Docker. Niezawodne kontenery produkcyjne. Praktyczne zastosowania. Wydanie 3 - ebook
Docker radykalnie zmienił proces wdrażania oprogramowania. Obrazy i kontenery Dockera ułatwiają zarządzanie zależnościami, co uprościło testowanie, wdrażanie i skalowanie aplikacji. Technologia ta intensywnie się rozwija, wciąż zmieniają się dostępne narzędzia i zalecane praktyki. To wszystko sprawia, że dogłębne zrozumienie działania współczesnego Dockera nie jest trywialnym zadaniem.
Dowiedz się, jak budować nowoczesne, niezawodne systemy rozproszone o wysokiej dostępności.
Mihai Todor, TLCP
To gruntownie zaktualizowane i uzupełnione wydanie praktycznego przewodnika po wdrażaniu i testowaniu kontenerów Dockera. Przedstawia proces przygotowania pakietu aplikacji ze wszystkimi ich zależnościami, a także jego testowania, wdrażania, skalowania i utrzymywania w środowiskach produkcyjnych. Zawiera omówienie Docker Compose i trybu Docker Swarm, opis zagadnień związanych z Kubernetes, jak również przykłady optymalizacji obrazów Dockera. W tym wydaniu zaprezentowano ponadto najlepsze praktyki i narzędzie BuildKit, opisano wsparcie obrazów wieloarchitekturowych, kontenerów rootless i uwzględniono wiele innych ważnych informacji.
W książce między innymi:
- integracja Dockera i kontenerów linuksowych z usługami chmurowymi i Kubernetes
- zarządzanie kontenerami linuksowymi z poziomu wiersza poleceń
- tworzenie i stosowanie obrazów OCI
- sprawne wdrażanie aplikacji w środowiskach produkcyjnych
- wdrażanie kontenerów linuksowych w publicznych i prywatnych chmurach
Ucz się z bezcennych praktycznych lekcji zebranych podczas wdrażania Dockera na dużą skalę!
Liz Rice, Isovalent
Ta książka wykracza poza pierwsze fascynacje Dockerem i przygotuje Cię do rzeczywistych wyzwań!
Kelsey Hightower, Google Cloud Platform
Spis treści
Przedmowa
Wstęp
1. Wprowadzenie
- Co obiecuje Docker
- Korzyści płynące ze stosowania procesów proponowanych przez Dockera
- Czym Docker nie jest
- Ważne pojęcia
- Podsumowanie
2. Docker i jego otoczenie
- Upraszczanie procesów
- Duże wsparcie i szerokie wykorzystanie
- Architektura
- Model klient-serwer
- Porty sieciowe i gniazdka Unix
- Rozbudowane narzędzia
- Tekstowy klient Dockera
- API Docker Engine
- Sieć w kontenerze
- Najlepsze zastosowania Dockera
- Kontenery to nie maszyny wirtualne
- Ograniczona izolacja
- Kontenery są lekkie
- Dążenie do niezmienności infrastruktury
- Aplikacje bezstanowe
- Przenoszenie informacji o stanie na zewnątrz
- Schemat pracy z Dockerem
- Wersjonowanie
- Budowanie
- Testowanie
- Tworzenie pakietów
- Wdrażanie
- Ekosystem Dockera
- Podsumowanie
3. Instalacja Dockera
- Klient Dockera
- Linux
- macOS, Mac OS X
- Microsoft Windows 11
- Serwer Dockera
- Linux korzystający z systemd
- Serwery na maszynach wirtualnych
- Testowanie
- Ubuntu
- Fedora
- Alpine Linux
- Poznajemy serwer Dockera
- Podsumowanie
4. Praca z obrazami Dockera
- Anatomia pliku Dockerfile
- Budowanie obrazu
- Uruchamianie zbudowanego obrazu
- Parametry budowania
- Zmienne środowiska jako konfiguracja
- Własne obrazy bazowe
- Zapisywanie obrazów
- Publiczne rejestry
- Rejestry prywatne
- Autoryzacja w rejestrze
- Uruchamianie własnego rejestru
- Optymalizowanie obrazów
- Utrzymywanie małych obrazów
- Warstwy są addytywne
- Korzystanie z pamięci podręcznej dla warstw
- Pamięć podręczna dla katalogów
- Usuwanie problemów z obrazami
- Naprawianie obrazów pre-BuildKit
- Naprawianie obrazów BuildKita
- Budowanie dla wielu architektur
- Podsumowanie
5. Praca z kontenerami
- Czym jest kontener?
- Historia kontenerów
- Tworzenie kontenera
- Podstawowa konfiguracja
- Magazyny danych
- Przydzielanie zasobów
- Uruchamianie kontenera
- Automatyczne restartowanie kontenera
- Zatrzymywanie kontenera
- Wymuszanie zakończenia pracy kontenera
- Pauzowanie i wznawianie pracy kontenera
- Czyszczenie kontenerów i obrazów
- Kontenery windowsowe
- Podsumowanie
6. Poznawanie Dockera
- Wyświetlanie wersji Dockera
- Informacje o serwerze
- Pobieranie aktualizacji obrazów
- Pobieranie informacji o kontenerze
- Wykorzystanie powłoki
- Zwracanie wyniku
- Wnętrze działającego kontenera
- docker container exec
- docker volume
- Logi
- Polecenie docker container logs
- Zaawansowane mechanizmy obsługi logów
- Monitorowanie Dockera
- Statystyki kontenerów
- Sprawdzanie stanu kontenera
- docker system events
- cAdvisor
- Prometheus
- Dalsze eksperymenty
- Podsumowanie
7. Debugowanie kontenerów
- Dane generowane przez proces
- Przeglądanie procesów
- Kontrolowanie procesów
- Przeglądanie sieci
- Historia obrazów
- Przeglądanie kontenera
- Przeglądanie systemu plików
- Podsumowanie
8. Docker Compose
- Konfigurowanie Docker Compose
- Uruchamianie usług
- Poznajemy Rocket.Chat
- Ćwiczenia z Docker Compose
- Zarządzanie konfiguracją
- Wartości domyślne
- Wartości obowiązkowe
- Plik dotenv
- Podsumowanie
9. Tworzenie kontenerów produkcyjnych
- Wdrażanie produkcyjne
- Rola Dockera w środowisku produkcyjnym
- Kontrola zadań
- Kontrola zasobów
- Sieć
- Konfiguracja
- Tworzenie i dostarczanie pakietów
- Zapisywanie logów
- Monitorowanie
- Planowanie
- Odkrywanie usług
- Podsumowanie środowisk produkcyjnych
- Docker i DevOps
- Szybki przegląd
- Zewnętrzne zależności
- Podsumowanie
10. Skalowanie kontenerów
- Tryb Docker Swarm
- Kubernetes
- Minikube
- Kubernetes zintegrowany z Docker Desktop
- Kind
- Amazon ECS i Fargate
- Podstawy AWS
- Konfiguracja IAM
- Przygotowanie AWS CLI
- Instancje kontenerów
- Zadania
- Testowanie zadania
- Zatrzymywanie zadania
- Podsumowanie
11. Zagadnienia zaawansowane
- Szczegółowo o kontenerach
- cgroups
- Przestrzenie nazw
- Bezpieczeństwo
- UID 0
- Tryb bez uprawnień roota
- Kontenery uprzywilejowane
- seccomp
- SELinux i AppArmor
- Demon Dockera
- Zaawansowana konfiguracja
- Sieć
- Magazyny danych
- nsenter
- Debugowanie kontenerów niezawierających powłoki
- Architektura Dockera
- Wymiana środowisk uruchomieniowych
- gVisor
- Podsumowanie
12. Rozszerzający się krajobraz
- Narzędzia klienckie
- Nerdctl
- podman i buildah
- Zintegrowane narzędzia dla programistów
- Rancher Desktop
- Podman Desktop
- Podsumowanie
13. Projektowanie platformy dla kontenerów
- The Twelve-Factor App
- Repozytorium kodów
- Zależności
- Konfiguracja
- Usługi pomocnicze
- Budowanie, udostępnianie, uruchamianie
- Procesy
- Wykorzystanie portów
- Współbieżność
- Dyspozycyjność
- Podobieństwo środowiska programistycznego i produkcyjnego
- Logi
- Procesy administracyjne
- Podsumowanie Twelve-Factor
- The Reactive Manifesto
- Responsywność
- Stabilność
- Elastyczność
- Obsługa komunikatów
- Podsumowanie
14. Wnioski
- Perspektywy na przyszłość
- Wyzwania
- Przepływ pracy w Dockerze
- Minimalizowanie liczby artefaktów do wdrożenia
- Optymalizacja przechowywania i przesyłania danych
- Korzyści
- Słowo końcowe
Kategoria: | Informatyka |
Zabezpieczenie: |
Watermark
|
ISBN: | 978-83-289-0372-2 |
Rozmiar pliku: | 5,4 MB |