Docker. Praktyczne zastosowania - ebook
Docker. Praktyczne zastosowania - ebook
Docker został zaprezentowany światu w marcu 2013 roku i praktycznie od początku wzbudza zaskakujące zainteresowanie. Narzędzie to pozwala na proste zarządzanie procesem tworzenia określonego elementu aplikacji, wdrażania go na dużą skalę w dowolnym środowisku oraz usprawniania przepływu pracy. Ma przy tym duże możliwości i łączy w sobie prostotę wdrażania aplikacji z prostotą administrowania. Jednym słowem, Docker jest niezwykle użytecznym narzędziem!
Niniejsza książka jest praktycznym przewodnikiem, dzięki któremu Docker przyczyni się do sukcesu organizacji na wiele sposobów: uprości podejmowanie decyzji dotyczących architektury, ułatwi pisanie narzędzi pomocniczych, a przede wszystkim umożliwi bezproblemowe przeprowadzanie integracji kolejnych elementów aplikacji. Opisano tu, w jaki sposób za pomocą Dockera można przygotować pakiet aplikacji ze wszystkimi ich zależnościami, a następnie je testować, wdrażać, skalować oraz utrzymywać ich pracę w środowiskach produkcyjnych.
W tej książce omówiono:
- wykorzystanie Dockera do automatyzacji i uproszczenia obsługi pakietów
- zasady pracy z obrazami, kontenerami i aplikacjami Dockera
- dołączanie do kodu aplikacji niezbędnych plików systemu operacyjnego
- możliwość testowania tego samego elementu aplikacji we wszystkich systemach i środowiskach
- oddzielenie warstwy aplikacji od warstwy sprzętowej bez poświęcania cennych zasobów
- zagadnienia konfiguracji sieci, koordynacji, bezpieczeństwa i zarządzania konfiguracją Dockera
Docker — sposób na niezawodne zarządzanie rozwojem aplikacji!
Spis treści
Przedmowa (11)
Wstęp (15)
1. Wprowadzenie (19)
- Narodziny Dockera (19)
- Co obiecuje Docker (19)
- Korzyści płynące ze stosowania procesów proponowanych przez Dockera (21)
- Czym Docker nie jest (23)
2. Rzut oka na Dockera (25)
- Upraszczanie procesów (25)
- Duże wsparcie i wykorzystanie (27)
- Architektura (28)
- Model klient-serwer (28)
- Porty sieciowe i gniazdka sieciowe (29)
- Rozbudowane narzędzia (29)
- Tekstowy klient Dockera (30)
- API (30)
- Sieć w kontenerze (31)
- Najlepsze zastosowania Dockera (32)
- Kontenery to nie maszyny wirtualne (33)
- Kontenery są lekkie (33)
- Dążenie do niezmienności infrastruktury (33)
- Ograniczona izolacja (34)
- Aplikacje bezstanowe (34)
- Przenoszenie informacji o stanie na zewnątrz (35)
- Schemat pracy z Dockerem (36)
- Wersjonowanie (36)
- Budowanie (37)
- Testowanie (38)
- Tworzenie pakietów (38)
- Wdrażanie (39)
- Ekosystem Dockera (39)
- Podsumowanie (41)
3. Instalacja Dockera (43)
- Ważne pojęcia (43)
- Klient Dockera (44)
- Linux (45)
- Mac OS X 10.10 (47)
- Microsoft Windows 8 (48)
- Serwer Dockera (48)
- Linux korzystający z systemd (49)
- Linux wykorzystujący upstart (49)
- Linux wykorzystujący init.d (49)
- Serwery na maszynach wirtualnych (50)
- Testowanie (58)
- Ubuntu (58)
- Fedora (58)
- CentOS (58)
- Podsumowanie (59)
4. Praca z obrazami Dockera (61)
- Anatomia pliku Dockerfile (61)
- Budowanie obrazu (64)
- Uruchamianie zbudowanego obrazu (68)
- Zmienne środowiska (69)
- Własne obrazy bazowe (69)
- Zapisywanie obrazów (70)
- Publiczne rejestry (70)
- Rejestry prywatne (71)
- Autoryzacja w rejestrze (71)
- Tworzenie kopii rejestru (74)
- Inne sposoby dostarczania obrazów (77)
5. Praca z kontenerami Dockera (79)
- Czym jest kontener? (79)
- Historia kontenerów (80)
- Tworzenie kontenera (81)
- Podstawowa konfiguracja (82)
- Magazyny danych (85)
- Ograniczenia zasobów (87)
- Uruchamianie kontenera (92)
- Automatyczne restartowanie kontenera (93)
- Zatrzymywanie kontenera (94)
- Wymuszanie zakończenia pracy kontenera (95)
- Pauzowanie i wznawianie pracy kontenera (96)
- Czyszczenie kontenerów i obrazów (96)
- Kolejne kroki (98)
6. Poznawanie Dockera (99)
- Wyświetlanie wersji Dockera (99)
- Informacje o serwerze (100)
- Pobieranie aktualizacji obrazów (101)
- Pobieranie informacji o kontenerze (102)
- Wnętrze działającego kontenera (103)
- docker exec (103)
- nsenter (104)
- Badanie powłoki (107)
- Zwracanie wyniku (107)
- Logi Dockera (109)
- Monitorowanie Dockera (112)
- Statystyki kontenerów (112)
- docker events (115)
- cAdvisor (116)
- Dalsze eksperymenty (120)
7. Tworzenie kontenerów produkcyjnych (121)
- Wdrażanie (121)
- Klasy narzędzi (122)
- Narzędzia do koordynacji (123)
- Narzędzia do planowania przetwarzania rozproszonego (123)
- Podsumowanie (125)
- Testowanie kontenerów (125)
- Szybki przegląd (125)
- Zewnętrzne zależności (128)
8. Debugowanie kontenerów (129)
- Dane generowane przez proces (129)
- Przeglądanie procesów (133)
- Kontrolowanie procesów (134)
- Przeglądanie sieci (135)
- Historia obrazów (136)
- Przeglądanie kontenera (136)
- Przeglądanie systemu plików (138)
- Dalsze kroki (138)
9. Skalowanie Dockera (139)
- Docker Swarm (140)
- Centurion (144)
- Amazon EC2 Container Service (148)
- Konfiguracja IAM (148)
- Przygotowanie AWS CLI (149)
- Instancje kontenerów (150)
- Zadania (153)
- Testowanie zadania (157)
- Zatrzymywanie zadania (158)
- Podsumowanie (159)
10. Zagadnienia zaawansowane (161)
- Mechanizmy wymienne (161)
- Sterownik uruchamiania (161)
- Magazyny danych (163)
- Szczegółowo o kontenerach (166)
- Grupy kontrolne (cgroups) (166)
- Przestrzeń nazw jądra, przestrzeń nazw użytkownika (169)
- Bezpieczeństwo (173)
- Czy kontener jest bezpieczny? (173)
- Czy demon Dockera jest bezpieczny? (178)
- Sieć (180)
11. Projektowanie produkcyjnej platformy dla kontenerów (185)
- 12factor (186)
- Repozytorium kodów (186)
- Zależności (186)
- Konfiguracja (188)
- Usługi pomocnicze (190)
- Budowanie, udostępnianie, uruchamianie (190)
- Procesy (190)
- Wykorzystanie portów (191)
- Współbieżność (191)
- Dyspozycyjność (192)
- Podobieństwo środowiska programistycznego i produkcyjnego (192)
- Logi (193)
- Procesy administracyjne (193)
- Podsumowanie twelve-factor (194)
- The Reactive Manifesto (194)
- Responsywność (194)
- Stabilność (194)
- Elastyczność (194)
- Obsługa komunikatów (195)
- Podsumowując (195)
12. Wnioski (197)
- Wyzwania (197)
- Przepływ pracy w Dockerze (198)
- Minimalizowanie liczby obiektów do wdrożenia (198)
- Optymalizacja przechowywania i przesyłania danych (199)
- Korzyści (199)
- Słowo końcowe (200)
Skorowidz (201)
Kategoria: | Programowanie |
Zabezpieczenie: |
Watermark
|
ISBN: | 978-83-283-2905-8 |
Rozmiar pliku: | 3,4 MB |