Kategorien
E-Books
-
Wirtschaft
- Bitcoin
- Geschäftsfrau
- Coaching
- Controlling
- E-Business
- Ökonomie
- Finanzen
- Börse und Investitionen
- Persönliche Kompetenzen
- Computer im Büro
- Kommunikation und Verhandlungen
- Kleines Unternehmen
- Marketing
- Motivation
- Multimedia-Training
- Immobilien
- Überzeugung und NLP
- Steuern
- Sozialpolitik
- Handbȕcher
- Präsentationen
- Führung
- Public Relation
- Berichte, Analysen
- Geheimnis
- Social Media
- Verkauf
- Start-up
- Ihre Karriere
- Management
- Projektmanagement
- Personal (HR)
-
Für Kinder
-
Für Jugendliche
-
Bildung
-
Enzyklopädien, Wörterbücher
-
E-Presse
- Architektura i wnętrza
- Biznes i Ekonomia
- Haus und Garten
- E-Business
- Finanzen
- Persönliche Finanzen
- Unternehmen
- Fotografie
- Informatik
- HR und Gehaltsabrechnung
- Computer, Excel
- Buchhaltung
- Kultur und Literatur
- Wissenschaftlich und akademisch
- Umweltschutz
- meinungsbildend
- Bildung
- Steuern
- Reisen
- Psychologie
- Religion
- Landwirtschaft
- Buch- und Pressemarkt
- Transport und Spedition
- Gesundheit und Schönheit
-
Geschichte
-
Informatik
- Office-Programme
- Datenbank
- Bioinformatik
- IT Branche
- CAD/CAM
- Digital Lifestyle
- DTP
- Elektronik
- Digitale Fotografie
- Computergrafik
- Spiele
- Hacking
- Hardware
- IT w ekonomii
- Wissenschaftliche Pakete
- Schulbücher
- Computergrundlagen
- Programmierung
- Mobile-Programmierung
- Internet-Server
- Computernetzwerke
- Start-up
- Betriebssysteme
- Künstliche Inteligenz
- Technik für Kinder
- Webmaster
-
Andere
-
Fremdsprachen lernen
-
Kultur und Kunst
-
Lektüre
-
Literatur
- Anthologien
- Ballade
- Biografien und Autobiografien
- Für Erwachsene
- Drama
- Tagebücher, Memoiren, Briefe
- Epos
- Essay
- Science Fiction
- Felietonys
- Fiktion
- Humor, Satire
- Andere
- Klassisch
- Krimi
- Sachbücher
- Belletristik
- Mity i legendy
- Nobelpreisträger
- Kurzgeschichten
- Gesellschaftlich
- Okultyzm i magia
- Erzählung
- Erinnerungen
- Reisen
- Gedicht
- Poesie
- Politik
- Populärwissenschaftlich
- Roman
- Historischer Roman
- Prosa
- Abenteuer
- Journalismus
- Reportage
- Romans i literatura obyczajowa
- Sensation
- Thriller, Horror
- Interviews und Erinnerungen
-
Naturwissenschaften
-
Sozialwissenschaften
-
Schulbücher
-
Populärwissenschaft und akademisch
- Archäologie
- Bibliotekoznawstwo
- Filmwissenschaft
- Philologie
- Polnische Philologie
- Philosophie
- Finanse i bankowość
- Erdkunde
- Wirtschaft
- Handel. Weltwirtschaft
- Geschichte und Archäologie
- Kunst- und Architekturgeschichte
- Kulturwissenschaft
- Linguistik
- Literaturwissenschaft
- Logistik
- Mathematik
- Medizin
- Geisteswissenschaften
- Pädagogik
- Lehrmittel
- Populärwissenschaftlich
- Andere
- Psychologie
- Soziologie
- Theatrologie
- Teologie
- Theorien und Wirtschaftswissenschaften
- Transport i spedycja
- Sportunterricht
- Zarządzanie i marketing
-
Handbȕcher
-
Spielanleitungen
-
Professioneller und fachkundige Leitfaden
-
Jura
- Sicherheit und Gesundheit am Arbeitsplatz
- Geschichte
- Verkehrsregeln. Führerschein
- Rechtswissenschaften
- Gesundheitswesen
- Allgemeines. Wissenskompendium
- akademische Bücher
- Andere
- Bau- und Wohnungsrecht
- Zivilrecht
- Finanzrecht
- Wirtschaftsrecht
- Wirtschafts- und Handelsrecht
- Strafrecht
- Strafrecht. Kriminelle Taten. Kriminologie
- Internationales Recht
- Internationales und ausländisches Recht
- Gesundheitsschutzgesetz
- Bildungsrecht
- Steuerrecht
- Arbeits- und Sozialversicherungsrecht
- Öffentliches, Verfassungs- und Verwaltungsrecht
- Familien- und Vormundschaftsrecht
- Agrarrecht
- Sozialrecht, Arbeitsrecht
- EU-Recht
- Industrie
- Agrar- und Umweltschutz
- Wörterbücher und Enzyklopädien
- Öffentliche Auftragsvergabe
- Management
-
Führer und Reisen
- Afrika
- Alben
- Südamerika
- Mittel- und Nordamerika
- Australien, Neuseeland, Ozeanien
- Österreich
- Asien
- Balkan
- Naher Osten
- Bulgarien
- China
- Kroatien
- Tschechische Republik
- Dänemark
- Ägypten
- Estland
- Europa
- Frankreich
- Berge
- Griechenland
- Spanien
- Niederlande
- Island
- Litauen
- Lettland
- Mapy, Plany miast, Atlasy
- Miniführer
- Deutschland
- Norwegen
- Aktive Reisen
- Polen
- Portugal
- Andere
- Russland
- Rumänien
- Slowakei
- Slowenien
- Schweiz
- Schweden
- Welt
- Türkei
- Ukraine
- Ungarn
- Großbritannien
- Italien
-
Psychologie
- Lebensphilosophien
- Kompetencje psychospołeczne
- zwischenmenschliche Kommunikation
- Mindfulness
- Allgemeines
- Überzeugung und NLP
- Akademische Psychologie
- Psychologie von Seele und Geist
- Arbeitspsychologie
- Relacje i związki
- Elternschafts- und Kinderpsychologie
- Problemlösung
- Intellektuelle Entwicklung
- Geheimnis
- Sexualität
- Verführung
- Aussehen ind Image
- Lebensphilosophien
-
Religion
-
Sport, Fitness, Diäten
-
Technik und Mechanik
Hörbücher
-
Wirtschaft
- Bitcoin
- Geschäftsfrau
- Coaching
- Controlling
- E-Business
- Ökonomie
- Finanzen
- Börse und Investitionen
- Persönliche Kompetenzen
- Kommunikation und Verhandlungen
- Kleines Unternehmen
- Marketing
- Motivation
- Immobilien
- Überzeugung und NLP
- Steuern
- Handbȕcher
- Präsentationen
- Führung
- Public Relation
- Geheimnis
- Social Media
- Verkauf
- Start-up
- Ihre Karriere
- Management
- Projektmanagement
- Personal (HR)
-
Für Kinder
-
Für Jugendliche
-
Bildung
-
Enzyklopädien, Wörterbücher
-
Geschichte
-
Informatik
-
Andere
-
Fremdsprachen lernen
-
Kultur und Kunst
-
Lektüre
-
Literatur
- Anthologien
- Ballade
- Biografien und Autobiografien
- Für Erwachsene
- Drama
- Tagebücher, Memoiren, Briefe
- Epos
- Essay
- Science Fiction
- Felietonys
- Fiktion
- Humor, Satire
- Andere
- Klassisch
- Krimi
- Sachbücher
- Belletristik
- Mity i legendy
- Nobelpreisträger
- Kurzgeschichten
- Gesellschaftlich
- Okultyzm i magia
- Erzählung
- Erinnerungen
- Reisen
- Poesie
- Politik
- Populärwissenschaftlich
- Roman
- Historischer Roman
- Prosa
- Abenteuer
- Journalismus
- Reportage
- Romans i literatura obyczajowa
- Sensation
- Thriller, Horror
- Interviews und Erinnerungen
-
Naturwissenschaften
-
Sozialwissenschaften
-
Populärwissenschaft und akademisch
- Archäologie
- Philosophie
- Wirtschaft
- Handel. Weltwirtschaft
- Geschichte und Archäologie
- Kunst- und Architekturgeschichte
- Kulturwissenschaft
- Literaturwissenschaft
- Mathematik
- Medizin
- Geisteswissenschaften
- Pädagogik
- Lehrmittel
- Populärwissenschaftlich
- Andere
- Psychologie
- Soziologie
- Teologie
- Zarządzanie i marketing
-
Handbȕcher
-
Professioneller und fachkundige Leitfaden
-
Jura
-
Führer und Reisen
-
Psychologie
- Lebensphilosophien
- zwischenmenschliche Kommunikation
- Mindfulness
- Allgemeines
- Überzeugung und NLP
- Akademische Psychologie
- Psychologie von Seele und Geist
- Arbeitspsychologie
- Relacje i związki
- Elternschafts- und Kinderpsychologie
- Problemlösung
- Intellektuelle Entwicklung
- Geheimnis
- Sexualität
- Verführung
- Aussehen ind Image
- Lebensphilosophien
-
Religion
-
Sport, Fitness, Diäten
-
Technik und Mechanik
Videokurse
-
Datenbank
-
Big Data
-
Biznes, ekonomia i marketing
-
Cybersicherheit
-
Data Science
-
DevOps
-
Für Kinder
-
Elektronik
-
Grafik / Video / CAX
-
Spiele
-
Microsoft Office
-
Entwicklungstools
-
Programmierung
-
Persönliche Entwicklung
-
Computernetzwerke
-
Betriebssysteme
-
Softwaretest
-
Mobile Geräte
-
UX/UI
-
Web development
-
Management
Podcasts
- E-Books
- Programmierung
- Docker
- Docker dla programistów. Rozwijanie aplikacji i narzędzia ciągłego dostarczania DevOps
Details zum E-Book
Docker dla programistów. Rozwijanie aplikacji i narzędzia ciągłego dostarczania DevOps
Richard Bullington-McGuire, Michael Schwartz, Andrew K. Dennis
Docker zyskuje coraz większe uznanie programistów. Dzięki swojej niezależności od platformy kontenery pozwalają na uruchamianie kodu w różnych środowiskach, zarówno w centrach danych, jak i w chmurze. Zastosowanie kontenerów bardzo upraszcza opracowanie, testowanie, wdrażanie i skalowanie aplikacji. Pozwala też na automatyzację przepływu pracy i stałe doskonalenie aplikacji. Aby skorzystać ze wszystkich tych zalet, architekci, projektanci i programiści muszą wszechstronnie i głęboko poznać wiele różnych aspektów zarządzania środowiskiem kontenerowym.
Oto wyczerpujące omówienie wszystkich zagadnień niezbędnych do tworzenia i rozwijania aplikacji w Dockerze. W książce zaprezentowano różne metody wdrażania i uruchamiania kontenerów, pokazano również, jak wykorzystuje się je w środowisku produkcyjnym. Wskazano właściwe techniki używania narzędzi Jenkins, Kubernetes i Spinnaker. Przedstawiono metody monitorowania, zabezpieczania i skalowania kontenerów za pomocą takich narzędzi jak Prometheus i Grafana. Nie zabrakło opisu wdrażania kontenerów w różnych środowiskach, między innymi w chmurowej usłudze Amazon Elastic Kubernetes Service, a także - na koniec - kwestii bezpieczeństwa Dockera i związanych z tym dobrych praktyk.
W książce:
- gruntowne wprowadzenie do Dockera i programowania w VirtualBox
- tworzenie systemów z kontenerów i ich wdrażanie w środowisku produkcyjnym
- ciągłe wdrażanie oprogramowania
- skalowanie, testy obciążeniowe i zagadnienia bezpieczeństwa
- stosowanie zewnętrznych narzędzi: AWS, Azure, GCP i innych
Docker. Wszechstronne wdrożenia w najlepszym stylu
O autorach 15
O recenzencie 17
Przedmowa 19
CZĘŚĆ I. WPROWADZENIE DO PLATFORMY DOCKER - KONTENERY I PROGRAMOWANIE W LOKALNYM ŚRODOWISKU 25
Rozdział 1. Wprowadzenie do platformy Docker 27
- Geneza platformy Docker 28
- Hosting kolokacyjny 28
- Hosting samodzielny 29
- Centra danych 29
- Wirtualizacja jako sposób na ekonomiczne wykorzystanie zasobów 31
- Rosnące zapotrzebowanie na energię 33
- Wirtualizacja i chmura obliczeniowa 34
- Dalsza optymalizacja zasobów centrów danych przy użyciu kontenerów 36
- Podsumowanie 38
- Dalsza lektura 38
Rozdział 2. Tworzenie aplikacji z użyciem VirtualBox i kontenerów Docker 39
- Wymagania techniczne 40
- Problem zanieczyszczania systemu plików hosta 40
- Tworzenie maszyn wirtualnych za pomocą programu VirtualBox 41
- Wprowadzenie do wirtualizacji 41
- Tworzenie maszyny wirtualnej 42
- Dodatki do systemu gościa 43
- Instalacja programu VirtualBox 44
- Kontenery Docker 45
- Wprowadzenie do kontenerów 45
- Tworzenie aplikacji przy użyciu platformy Docker 47
- Pierwsze kroki z platformą Docker 48
- Automatyzacja poleceń za pomocą skryptów 49
- Podsumowanie 59
- Dalsza lektura 60
Rozdział 3. Udostępnianie kontenerów w serwisie Docker Hub 61
- Wymagania techniczne 62
- Wprowadzenie do serwisu Docker Hub 62
- Korzystanie z serwisu Docker Hub za pomocą wiersza poleceń 63
- Korzystanie z serwisu Docker Hub za pomocą przeglądarki 64
- Implementacja kontenera MongoDB w aplikacji 66
- Uruchomienie powłoki kontenera 69
- Wprowadzenie do architektury mikrousługowej 71
- Skalowalność 72
- Komunikacja między kontenerami 72
- Implementacja prostej aplikacji mikrousługowej 75
- Udostępnianie kontenerów w serwisie Docker Hub 79
- Podsumowanie 82
- Dalsza lektura 82
Rozdział 4. Tworzenie systemów przy użyciu kontenerów 83
- Wymagania techniczne 84
- Wprowadzenie do narzędzia Docker Compose 84
- Problem ze skryptami 85
- Pliki konfiguracyjne narzędzia Docker Compose 86
- Dziedziczenie konfiguracji 89
- Sekcja depends_on 90
- Definiowanie udostępnianych portów 91
- Lokalne sieci w platformie Docker 94
- Definiowanie sieci za pomocą skryptów 94
- Tworzenie sieci za pomocą narzędzia Docker Compose 96
- Wiązanie systemów plików hosta i kontenera 97
- Optymalizacja wielkości kontenera 98
- Skrypt build.sh 100
- Inne narzędzia kompozycyjne 101
- Docker Swarm 101
- Kubernetes 101
- Packer 102
- Podsumowanie 102
- Dalsza lektura 103
CZĘŚĆ II. PLATFORMA DOCKER W ŚRODOWISKU PRODUKCYJNYM 105
Rozdział 5. Wdrażanie i uruchamianie kontenerów w środowisku produkcyjnym 107
- Wymagania techniczne 108
- Przykładowa aplikacja ShipIt Clicker 108
- Uruchamianie kontenerów Docker w środowisku produkcyjnym 109
- Minimalne środowisko produkcyjne 109
- Niezbędne minimum - Docker i Docker Compose na jednym hoście 110
- Wsparcie dla platformy Docker 110
- Problemy z wdrażaniem na pojedynczym hoście 110
- Zarządzane usługi chmurowe 111
- Google Kubernetes Engine 111
- AWS Elastic Beanstalk 112
- AWS ECS i Fargate 112
- AWS EKS 112
- Microsoft Azure Kubernetes Service 113
- DigitalOcean Docker Swarm 113
- Tworzenie własnych klastrów Kubernetes 113
- Dobieranie właściwej konfiguracji produkcyjnej 114
- Ćwiczenie - dołącz do zespołu ShipIt Clicker 116
- Ćwiczenie - wybór właściwej metody wdrożenia 119
- Ćwiczenie - ocena plików Dockerfile i docker-compose.yml 121
- Podsumowanie 121
Rozdział 6. Wdrażanie aplikacji przy użyciu Docker Compose 123
- Wymagania techniczne 124
- Przykładowa aplikacja - ShipIt Clicker v2 124
- Dobór sprzętu i systemu operacyjnego dla aplikacji jednoserwerowej 124
- Wymagania dla wdrożenia jednoserwerowego 124
- Przygotowanie hosta do uruchomienia platformy Docker i narzędzia Docker Compose 125
- Instalacja platformy Docker i narzędzia Git 126
- Wdrażanie aplikacji przy użyciu plików konfiguracyjnych i skryptów 127
- Weryfikacja pliku Dockerfile 127
- Weryfikacja pliku docker-compose.yml 129
- Przygotowanie produkcyjnego pliku .env 131
- Skrypty 132
- Ćwiczenie - przechowywanie plików aplikacyjnych poza serwerem produkcyjnym 135
- Ćwiczenie - zabezpieczenie środowiska produkcyjnego 135
- Monitorowanie niewielkich aplikacji - dzienniki i alarmy 136
- Dzienniki 136
- Alarmy 137
- Ograniczenia aplikacji jednoserwerowych 137
- Brak automatycznego przełączania awaryjnego 138
- Brak skalowalności w poziomie wraz ze wzrostem obciążenia 138
- Niestabilność działania z powodu błędnej konfiguracji 138
- Katastrofalne skutki awarii w przypadku braku kopii zapasowej 139
- Studium przypadku - migracja z systemu CoreOS i usługi DigitalOcean do CentOS 7 i AWS 139
- Podsumowanie 139
- Dalsza lektura 140
Rozdział 7. Ciągłe wdrażanie oprogramowania przy użyciu systemu Jenkins 141
- Wymagania techniczne 142
- Przykładowa aplikacja - ShipIt Clicker v3 142
- Wykorzystanie systemu Jenkins w procesie ciągłej integracji oprogramowania 143
- Pułapki, których powinieneś unikać 143
- Wykorzystanie istniejącego serwera 144
- Instalacja systemu Jenkins 144
- Ciągłe wdrażanie oprogramowania przy użyciu systemu Jenkins 148
- Plik Jenkinsfile i połączenie z serwerem 148
- Testowanie systemu Jenkins i platformy Docker za pomocą skryptu procesowego 148
- Łączenie z serwerem produkcyjnym za pomocą usługi SSH 150
- Modyfikowanie konfiguracji za pomocą systemu Jenkins 154
- Umieszczenie pliku Jenkinsfile w serwisie GitHub 154
- Zmiana źródeł wszystkich repozytoriów 156
- Definiowanie zmiennych środowiskowych dla serwera produkcyjnego 157
- Budowanie kontenerów i umieszczanie ich w serwisie Docker Hub 158
- Umieszczanie kontenerów w serwisie Docker Hub i wdrażanie ich w środowisku produkcyjnym 159
- Wdrażanie różnych odgałęzień oprogramowania w kilku środowiskach 162
- Utworzenie środowiska testowego 162
- Definiowanie zmiennych środowiskowych dla serwera testowego 163
- Wymuszenie wdrożenia testowego odgałęzienia projektu 163
- Złożoność i ograniczenia skalowalności systemu Jenkins 165
- Zarządzanie wieloma hostami 165
- Złożoność skryptów 166
- Kiedy wiadomo, że została osiągnięta granica? 166
- Podsumowanie 167
- Dalsza lektura 167
Rozdział 8. Wdrażanie kontenerów Docker przy użyciu platformy Kubernetes 169
- Wymagania techniczne 170
- Opcje lokalnej instalacji platformy Kubernetes 170
- Docker Desktop i platforma Kubernetes 170
- Minikube 171
- Sprawdzenie poprawności działania platformy Kubernetes 172
- Wdrożenie przykładowej aplikacji ShipIt Clicker v4 172
- Instalacja programu Helm 172
- Lokalne wdrożenie aplikacji ShipIt Clicker i kontrolera NGINX Ingress Controller 173
- Dobór dystrybucji platformy Kubernetes 175
- Google Kubernetes Engine 175
- AWS EKS 175
- Red Hat OpenShift 176
- Microsoft Azure Kubernetes Service 176
- Inne opcje 177
- Pojęcia stosowane w platformie Kubernetes 178
- Obiekty 178
- Mapy ConfigMap 179
- Pody 180
- Węzły 180
- Usługi 180
- Kontrolery wejściowe 181
- Skrytki 182
- Przestrzenie nazw 187
- Konfigurowanie usługi AWS EKS za pomocą szablonu CloudFormation 187
- Wprowadzenie do szablonów AWS EKS Quick Start CloudFormation 188
- Przygotowanie konta AWS 188
- Szablony AWS EKS Quick Start CloudFormation 192
- Konfigurowanie klastra EKS 195
- Wdrożenie aplikacji w klastrze AWS ESK i ograniczenie zasobów 197
- Konfigurowanie ograniczeń chroniących przed wyciekiem pamięci i przeciążeniem procesora 197
- Przygotowanie aplikacji ShipIt Clicker do korzystania z kontrolera ALB 198
- Wdrożenie aplikacji ShipIt Clicker w klastrze EKS 198
- Repozytorium AWS Elastic Container Registry w klastrze AWS EKS 199
- Tworzenie repozytorium ECR 200
- Rozdzielanie środowisk za pomocą etykiet i przestrzeni nazw 202
- Przykład - oznaczenie etykietami środowisk w domyślnej przestrzeni nazw 202
- Środowiska programistyczne, akceptacyjne, testowe i produkcyjne 203
- Podsumowanie 204
- Dalsza lektura 204
Rozdział 9. Ciągłe wdrażanie oprogramowania w chmurze przy użyciu platformy Spinnaker 207
- Wymagania techniczne 208
- Zaktualizowana wersja aplikacji ShipIt Clicker v5 208
- Usprawnienie platformy Kubernetes pod kątem utrzymywania aplikacji 209
- Zarządzanie klastrem EKS za pomocą lokalnej stacji roboczej 209
- Diagnozowanie problemów z połączeniem narzędzia kubectl z klastrem 210
- Przełączanie pomiędzy kontekstem klastra i lokalnej stacji 210
- Sprawdzenie poprawności działania kontrolera wejściowego ALB 211
- Przygotowanie domeny Route 53 i certyfikatu 211
- Utworzenie i wdrożenie aplikacji ShipIt Clicker v5 212
- Platforma Spinnaker - kiedy i dlaczego są niezbędne bardziej zaawansowane wdrożenia 215
- Wprowadzenie do platformy Spinnaker 215
- Instalacja platformy Spinnaker w klastrze AWS EKS za pomocą programu Helm 217
- Komunikacja z platformą Spinnaker za pomocą proxy kubectl 218
- Udostępnianie platformy za pomocą kontrolera wejściowego ALB 218
- Konfiguracja platformy Spinnaker za pomocą programu Halyard 220
- Połączenie platformy Spinnaker z systemem Jenkins 220
- Integracja systemu Jenkins z platformą Spinnaker i repozytorium ECR 221
- Połączenie platformy Spinnaker z serwisem GitHub 226
- Połączenie platformy Spinnaker z serwisem Docker Hub 226
- Diagnozowanie problemów z platformą Spinnaker 227
- Prosta strategia wdrożenia aplikacji ShipIt Clicker za pomocą platformy Spinnaker 228
- Definiowanie aplikacji w platformie Spinnaker 228
- Definiowanie procesu w platformie Spinnaker 229
- Utworzenie wpisu DNS dla kontrolera wejściowego 234
- Funkcjonalności wdrożeniowe i testowe platformy Spinnaker 235
- Wdrożenie kanarkowe 235
- Wdrożenie "czerwone/czarne" 235
- Anulowanie wdrożenia 236
- Testowanie aplikacji 236
- Podsumowanie 237
- Dalsza lektura 237
Rozdział 10. Monitorowanie kontenerów Docker przy użyciu systemów Prometheus, Grafana i Jaeger 239
- Wymagania techniczne 240
- Wdrożenie demonstracyjnej aplikacji ShipIt Clicker v7 240
- Dzienniki kontenerów Docker i programów uruchomieniowych 243
- Dzienniki kontenerów Docker 243
- Cechy idealnego systemu zarządzania dziennikami 244
- Diagnozowanie problemów z warstwą sterowania platformy Kubernetes na podstawie dzienników 245
- Zapisywanie dzienników w usłudze CloudWatch Logs 246
- Długotrwałe przechowywanie dzienników w usłudze S3 247
- Analiza dzienników za pomocą usług CloudWatch Insights i Amazon Athena 248
- Ćwiczenie - sprawdzenie liczby uruchomień gry ShipIt Clicker 249
- Testy dostępności, gotowości i uruchamiania w platformie Kubernetes 249
- Sprawdzanie za pomocą testów dostępności, czy kontener odpowiada na zapytania 250
- Sprawdzanie za pomocą testów gotowości, czy usługa może przetwarzać ruch 250
- Przystosowanie aplikacji ShipIt Clicker do osobnych testów dostępności i gotowości 251
- Ćwiczenie - wymuszenie negatywnego wyniku testu gotowości aplikacji ShipIt Clicker 252
- Zbieranie wskaźników i wysyłanie alarmów za pomocą systemu Prometheus 252
- Historia systemu 253
- Zapytania i interfejs WWW 253
- Definiowanie w aplikacji wskaźników dla systemu Prometheus 254
- Odczytywanie niestandardowych wskaźników 256
- Konfiguracja alarmów 256
- Wysyłanie powiadomień za pomocą modułu Alertmanager 258
- Szczegóły zapytań i zewnętrznego monitoringu 260
- Wizualizacja danych operacyjnych za pomocą systemu Grafana 260
- Dostęp do systemu 260
- Dodawanie paneli opracowanych przez społeczność użytkowników 261
- Utworzenie nowego panelu z niestandardowym zapytaniem 262
- Monitorowanie wydajności aplikacji za pomocą systemu Jaeger 264
- Interfejs OpenTracing API 264
- Wprowadzenie do systemu Jaeger 265
- Instalacja klienta systemu Jaeger w aplikacji ShipIt Clicker 267
- Instalacja rozszerzenia Jaeger Operator 270
- Podsumowanie 272
- Dalsza lektura 272
Rozdział 11. Skalowanie i testy obciążeniowe aplikacji w środowisku Docker 275
- Wymagania techniczne 276
- Nowa aplikacja ShipIt Clicker v8 276
- Skalowanie klastra Kubernetes 278
- Ręczne skalowanie klastra 279
- Dynamiczne skalowanie klastra 281
- Siatka usług Envoy i jej zastosowania 285
- Zarządzanie ruchem w sieci 286
- Instalacja siatki Envoy 287
- Testowanie skalowalności i wydajności aplikacji za pomocą narzędzia k6 291
- Rejestrowanie i odtwarzanie sesji 292
- Ręczne tworzenie realistycznego testu 293
- Wykonanie testu obciążeniowego 297
- Podsumowanie 298
- Dalsza lektura 299
CZĘŚĆ III. BEZPIECZEŃSTWO KONTENERÓW DOCKER 301
Rozdział 12. Wprowadzenie do bezpieczeństwa kontenerów 303
- Wymagania techniczne 304
- Wirtualizacja i modele bezpieczeństwa hiperwizora 304
- Wirtualizacja i pierścienie ochronne 304
- Platforma Docker i pierścienie ochronne 306
- Kontenerowe modele bezpieczeństwa 308
- Docker Engine, containerd i zabezpieczenia w systemie Linux 309
- Przestrzeń PID 310
- Przestrzeń MNT 311
- Przestrzeń NET 311
- Przestrzeń IPC 311
- Przestrzeń UTS 311
- Przestrzeń USER 312
- Uwaga dotycząca grup cgroups 312
- Dobre praktyki w skrócie 312
- Regularnie instaluj poprawki 313
- Zabezpieczaj gniazdo sieciowe 313
- Nie uruchamiaj błędnego kodu 315
- Zawsze twórz konto użytkownika z minimalnymi uprawnieniami 315
- Podsumowanie 315
Rozdział 13. Podstawy bezpieczeństwa i dobre praktyki korzystania z platformy Docker 317
- Wymagania techniczne 318
- Bezpieczeństwo obrazów kontenerów 318
- Weryfikacja obrazu 320
- Minimalny obraz bazowy 322
- Ograniczanie uprawnień 323
- Zapobieganie wyciekowi danych 324
- Bezpieczne korzystanie z poleceń w platformie Docker 326
- Polecenia COPY i ADD - jaka jest różnica? 326
- Kopiowanie rekurencyjne - bądź ostrożny 327
- Bezpieczeństwo procesu budowania kontenerów 328
- Wieloetapowy proces budowania obrazu 329
- Ograniczanie możliwości i zasobów wdrażanego kontenera 330
- Ograniczanie zasobów 330
- Ograniczanie możliwości 331
- Podsumowanie 332
Rozdział 14. Zaawansowane zabezpieczenia: skrytki, poufne polecenia, znaczniki i etykiety 333
- Wymagania techniczne 334
- Bezpieczne przechowywanie poufnych danych w platformie Docker 334
- Dziennik Raft 335
- Tworzenie, edytowanie i usuwanie skrytek 336
- Tworzenie skrytek 336
- Odczytywanie skrytek 336
- Usuwanie skrytek 337
- Skrytki w akcji - przykłady 338
- Zabezpieczanie kontenerów za pomocą znaczników 340
- Umieszczanie w etykietach metadanych aplikacji 341
- Podsumowanie 342
Rozdział 15. Skanowanie, monitorowanie i zewnętrzne narzędzia 343
- Wymagania techniczne 344
- Skanowanie i monitorowanie a bezpieczeństwo kontenerów w chmurze i środowisku programistycznym 344
- Skanowanie obrazów kontenerów za pomocą programu Anchore Engine 345
- Chef InSpec 349
- Lokalny monitoring platformy Docker za pomocą natywnego narzędzia stats 350
- Agregowanie danych monitoringowych w chmurze za pomocą narzędzia Datadog 353
- Zabezpieczanie kontenerów w chmurze AWS 356
- Alarmy bezpieczeństwa w usłudze AWS GuardDuty 357
- Zabezpieczanie kontenerów w chmurze Azure 358
- Monitorowanie kontenerów w chmurze Azure 358
- Zabezpieczanie kontenerów przy użyciu usługi Security Center 359
- Zabezpieczanie kontenerów w chmurze GCP 360
- Analiza kontenerów i uwierzytelnienie binarne 361
- Wykrywanie ataków za pomocą usługi Security Command Center 362
- Podsumowanie 363
- Dalsza lektura 364
Rozdział 16. Wnioski - koniec drogi, ale nie podróży 365
- Wymagania techniczne 365
- Kontenery w skrócie 366
- Czego się dowiedziałeś o tworzeniu aplikacji 366
- Wzorce projektowe 366
- Poszerzenie wiedzy o tworzeniu i utrzymaniu aplikacji 369
- Inżynieria chaosu i tworzenie niezawodnych systemów produkcyjnych 369
- Bezpieczeństwo i dalsze kroki 371
- Metasploit i testy penetracyjne 371
- Podsumowanie 373
- Titel: Docker dla programistów. Rozwijanie aplikacji i narzędzia ciągłego dostarczania DevOps
- Autor: Richard Bullington-McGuire, Michael Schwartz, Andrew K. Dennis
- Originaler Titel: Docker for Developers: Develop and run your application with Docker containers using DevOps tools for continuous deliver
- Übersetzung: Andrzej Watrak
- ISBN: 978-83-283-7728-8, 9788328377288
- Veröffentlichungsdatum: 2021-06-22
- Format: E-book
- Artikelkennung: dockpr
- Verleger: Helion