1
00:00:00,040 --> 00:00:01,720
Container 1 sind wieder 
hochgefahren, Container 2. 

2
00:00:01,720 --> 00:00:04,960
Ich hab wieder gestartet ja 
Service 3 ist wieder online, so 

3
00:00:04,960 --> 00:00:08,320
weißt du. 
Coding Buddies Dein Podcast rund

4
00:00:08,320 --> 00:00:10,480
um Softwareentwicklung und 
aktueller Tech News. 

5
00:00:11,120 --> 00:00:25,230
Herzlich Willkommen. 
Halli Hallo und herzlich 

6
00:00:25,230 --> 00:00:27,870
Willkommen zur neuen Folge des 
Coding Buddies Podcast. 

7
00:00:28,030 --> 00:00:29,590
Schön, dass du wieder 
eingeschaltet hast. 

8
00:00:29,590 --> 00:00:32,280
Lieber zuhören, lieber Zuhörer. 
Und deine Gastgeber, wie soll's 

9
00:00:32,280 --> 00:00:35,280
auch anders sein, meine 
Wenigkeit, der Tino und der 

10
00:00:35,280 --> 00:00:38,560
fantastische Fabi, der sich wie 
immer freut über meine Standard 

11
00:00:38,560 --> 00:00:43,440
Anmoderation. 
Ja Fabi, was geht ab, wie geht's

12
00:00:43,480 --> 00:00:45,120
dir? 
Tino, Wie geht's? 

13
00:00:45,120 --> 00:00:46,360
Wie steht's? 
Ich hab grad so ein bisschen 

14
00:00:46,360 --> 00:00:48,720
blöde die Kamera gegrinst, weil 
ich so ein paar Faxen gemacht 

15
00:00:48,720 --> 00:00:50,880
hab, ich hoffe gut. 
Dass wir jetzt das immer mit 

16
00:00:50,880 --> 00:00:52,320
aufnehmen, dann können wir das 
ja zeigen. 

17
00:00:52,960 --> 00:00:54,640
Ich hoffe, ich hab dich nicht 
abgelenkt. 

18
00:00:55,520 --> 00:00:57,840
Nein, alles gut, mir geht's ganz
gut. 

19
00:00:59,280 --> 00:01:01,520
Würde ich sagen, soweit ich 
habe. 

20
00:01:01,520 --> 00:01:03,640
Ich habe letztens, das möchte 
ich ganz kurz zeigen, ich habe 

21
00:01:03,640 --> 00:01:05,960
letztens eine krasse neue 
Erfahrung gemacht, die gar 

22
00:01:05,960 --> 00:01:09,960
nichts mit Coden zu tun hatte. 
Hau raus, aber. 

23
00:01:09,960 --> 00:01:12,640
Ich bin jetzt auf jeden Fall 
offiziell aufgelevelt in meinen 

24
00:01:12,640 --> 00:01:18,400
Skills, in meinen wie sagt man 
alltagskills Ach nicht mal 

25
00:01:18,400 --> 00:01:20,960
alltagskills nein, es ist, ich 
habe pass auf, ich habe einen 

26
00:01:20,960 --> 00:01:24,600
Fliesenspiegel selbst gefliest. 
Krass, da sind deine 

27
00:01:24,600 --> 00:01:27,440
handwerklichen Skills genau 
genau genau im Crafting. 

28
00:01:27,920 --> 00:01:30,960
Und ich hab, ich hab das noch 
nie gemacht und ich bin aber 

29
00:01:30,960 --> 00:01:33,520
eigentlich ziemlich zufrieden. 
Also ich denke mal wenn man 

30
00:01:33,520 --> 00:01:37,120
jetzt so Profi ist, dann denkt 
man sich vielleicht so, ah hier 

31
00:01:37,120 --> 00:01:40,480
hätte so n keine Ahnung, kreuz 
weißt du wo das wo die Fuge 

32
00:01:40,480 --> 00:01:42,160
hinkommt, die hätte vielleicht 
noch n bisschen besser sein 

33
00:01:42,160 --> 00:01:46,160
können oder so. 
Aber ist n Unikat, ist halt dein

34
00:01:46,160 --> 00:01:47,840
Werk. 
Ja, aber es ist nicht schlecht. 

35
00:01:47,840 --> 00:01:51,520
Weißt du also, es könnte doch es
ist, es ist so, weißt du, das 

36
00:01:51,520 --> 00:01:55,680
erste Mal gemacht. 95% perfekt, 
aber nicht 100. 

37
00:01:56,920 --> 00:01:59,720
Das ist aber 95 nicht schlecht. 
Also ich hab ja ein Bild gesehen

38
00:01:59,720 --> 00:02:03,800
und es sah auch zumindest auf 
dem Bild schon gut aus, muss man

39
00:02:03,800 --> 00:02:04,720
sagen. 
Ja, das war nur. 

40
00:02:04,720 --> 00:02:07,160
Das ey ich mein, du hast mir ja 
so ein total verpixeltes Bild 

41
00:02:07,160 --> 00:02:08,479
geschickt. 
Ja, aber man hat ja eigentlich 

42
00:02:08,479 --> 00:02:10,919
gar nichts erkannt oder so ein 
Katalog. 

43
00:02:11,440 --> 00:02:12,880
Das war dunkel im Raum. 
Genau. 

44
00:02:13,400 --> 00:02:15,920
Das ist doch gar nicht. 
Das ist doch gar nicht dein 

45
00:02:15,920 --> 00:02:18,560
Raum, ja. 
Ja, aber das. 

46
00:02:18,560 --> 00:02:20,640
Fand ich auf. 
Jeden Fall also erstmal Chapeau.

47
00:02:20,640 --> 00:02:23,600
Ne, dass du das in die Hand 
genommen hast, find ich gut. 

48
00:02:23,600 --> 00:02:26,080
Ja man sagt ja auch 
Entwicklerinnen und Entwicklern 

49
00:02:26,080 --> 00:02:30,000
oft nach, dass sie 2 linke Hände
haben und du warst ja jetzt 

50
00:02:30,000 --> 00:02:34,400
quasi so n Gegenbeweis ja, also 
Respekt an dich, fabi, ja. 

51
00:02:34,640 --> 00:02:36,720
Ich, ich dachte mir, weißt du, 
deswegen geht es mir auch ganz 

52
00:02:36,720 --> 00:02:39,080
gut, weil ich einfach zufrieden 
bin, dass ich so weißt du 

53
00:02:39,600 --> 00:02:41,440
einfach mal. 
Ehrliche Arbeit gemacht. 

54
00:02:41,480 --> 00:02:45,480
Hab sehr gut, sehr gut. 
Ich find das ist auch n gutes 

55
00:02:45,480 --> 00:02:48,880
Stichwort, wenn es um erschaffen
und bauen geht. 

56
00:02:49,040 --> 00:02:51,840
Aber bevor wir zum heutigen 
Thema kommen, noch ganz kurz 

57
00:02:52,480 --> 00:02:54,880
eine Anmerkung, Liebe zuhören, 
lieber zuhören, falls dir dieser

58
00:02:54,880 --> 00:02:57,800
Podcast gefällt und auch du auch
vielleicht mehr wissen möchtest 

59
00:02:57,800 --> 00:03:02,560
über Fabi Fliesenspiegel, dann 
lass doch gerne ne Bewertung da 

60
00:03:03,520 --> 00:03:08,560
Teile den Podcast kommen. 
Tier ihn, schreib uns, wir 

61
00:03:08,560 --> 00:03:12,000
würden uns mega freuen, das 
supported uns extrem und 

62
00:03:12,080 --> 00:03:14,920
deswegen jetzt geht es auch 
direkt los mit dem Thema und 

63
00:03:14,920 --> 00:03:17,000
zwar klar wie. 
Follow da das ist. 

64
00:03:17,000 --> 00:03:20,840
N Follow auf jeden Fall. 
Das hilft uns ungemein und das 

65
00:03:20,840 --> 00:03:24,880
heutige Thema und jetzt kommt 
Stichwort bauen, wir machen 

66
00:03:24,880 --> 00:03:27,160
heute weiter mit unserer def Ops
Reihe Fabi Ich hoffe du hast. 

67
00:03:27,280 --> 00:03:29,760
Sehr schön, wir lieben. 
Def Ops Wir haben Bock auf def. 

68
00:03:30,680 --> 00:03:35,200
Ops ja, sei Def Ops. 
Dev Ops, so das heutige Thema, 

69
00:03:35,200 --> 00:03:37,680
ist nämlich, was fehlt noch in 
unserer Reihe. 

70
00:03:37,680 --> 00:03:42,120
Wir wollen heute mal über 
Kontinuierisierung sprechen und 

71
00:03:42,120 --> 00:03:45,360
das ist n ganz ganz wichtiges 
Thema und auch n extrem 

72
00:03:45,360 --> 00:03:47,920
spannendes Thema muss ich sagen 
und ich hoffe wir kriegen das 

73
00:03:47,920 --> 00:03:51,040
gut rübergebracht, lass uns 
schauen, dass wir auch wieder so

74
00:03:51,040 --> 00:03:54,880
Beispiele und Analogien einbauen
um das ganze n bisschen zu. 

75
00:03:55,760 --> 00:03:57,920
Ja, bildlich darzustellen sage 
ich mal. 

76
00:03:58,160 --> 00:04:00,160
Und ich denke, dann wird das 
eine ganz coole Folge. 

77
00:04:00,160 --> 00:04:02,320
Oder was meinst du? 
Ja, auf jeden Fall. 

78
00:04:02,320 --> 00:04:05,200
Und Containerisierung 
containerisation ich weiß gar 

79
00:04:05,200 --> 00:04:07,920
nicht, wie man das so richtig 
ausspricht, das beide deutsch 

80
00:04:07,920 --> 00:04:11,800
Englisch ist auf jeden Fall auch
ein spannendes Thema und auch 

81
00:04:11,800 --> 00:04:15,040
ein wichtiges Thema, gerade im 
Def Ops Bereich, was natürlich 

82
00:04:15,040 --> 00:04:17,600
jetzt erstmal wichtig ist. 
Was ist eigentlich ein 

83
00:04:17,600 --> 00:04:19,640
Container? 
Darüber hatten wir auch schon 

84
00:04:19,640 --> 00:04:21,920
mal eine eigene Podcast Folge 
gemacht, deswegen wollen wir das

85
00:04:21,920 --> 00:04:23,600
jetzt nicht zu krass vertiefen, 
aber. 

86
00:04:23,760 --> 00:04:26,880
Also wenn das jetzt noch mal 
interessiert, Liebe Zora, lieber

87
00:04:26,880 --> 00:04:29,040
Zora, dann guck noch mal paar 
folgen zurück. 

88
00:04:29,200 --> 00:04:31,760
Da gibt es auf jeden Fall ne 
ausführliche Folge zum Thema 

89
00:04:31,760 --> 00:04:35,520
Container und aber um das 
vielleicht noch mal so n 

90
00:04:35,520 --> 00:04:42,240
bisschen, ich sag mal 
abzugrenzen, kurz knapp, also NN

91
00:04:42,240 --> 00:04:45,120
Container an sich ist ja im 
Endeffekt ein. 

92
00:04:45,840 --> 00:04:49,920
Ein Image, was keine Operating 
systemschicht, also kein 

93
00:04:49,920 --> 00:04:53,200
Betriebssystem, sozusagen keine 
Betriebssystemschicht benötigt. 

94
00:04:54,240 --> 00:04:59,360
Das heißt quasi ein Container 
ist eine gekapselte Umgebung, 

95
00:04:59,520 --> 00:05:03,200
was auf dem also die Ressourcen 
des Betriebssystems benutzt, 

96
00:05:03,200 --> 00:05:06,160
wenn man das jetzt noch mal 
abgrenzt zu einem zu einer VM, 

97
00:05:06,160 --> 00:05:08,840
da ist es ja so, dass im 
Endeffekt eine VM simuliert noch

98
00:05:08,840 --> 00:05:12,120
mal komplett. 
Ein ganzes OS, also ein ganzes 

99
00:05:12,120 --> 00:05:17,040
Betriebssystem mit in der 
virtuellen Maschine und benutzt 

100
00:05:17,040 --> 00:05:20,160
sozusagen nicht die nicht die 
Ressourcen des zugrundeliegenden

101
00:05:20,160 --> 00:05:22,400
Betriebssystems, sondern du 
kannst ja auf dann zum Beispiel 

102
00:05:22,400 --> 00:05:24,880
dem Windows Betriebssystem 
kannst du noch mal ein Linux 

103
00:05:24,880 --> 00:05:28,000
Betriebssystem oder andersrum 
beispielsweise in einer VM 

104
00:05:29,200 --> 00:05:32,160
laufen lassen und dann hast du 
im Endeffekt. 

105
00:05:32,560 --> 00:05:35,680
Sozusagen 2 Betriebssysteme, die
du laufen hast. 

106
00:05:35,680 --> 00:05:38,120
Also einmal auf dem 
zugrundeliegenden System und 

107
00:05:38,120 --> 00:05:40,600
dann noch mal in der VM. 
Das ist beim Container eben 

108
00:05:40,600 --> 00:05:42,600
nicht so. 
Was das Ganze auf jeden Fall 

109
00:05:42,600 --> 00:05:46,120
schlanker macht und auch einfach
handlebarer, gerade wenn es 

110
00:05:46,120 --> 00:05:50,560
jetzt zum Beispiel auch bei 
Containerisation im Def Ops 

111
00:05:50,560 --> 00:05:52,560
Bereich auch um Skalierung und 
so weiter geht, ne? 

112
00:05:54,240 --> 00:05:56,160
Genau. 
Also es ist halt nicht so 

113
00:05:56,160 --> 00:05:58,560
schwergewichtig wie eine VM, wie
du gerade schon meintest. 

114
00:05:58,560 --> 00:06:00,880
Dadurch, dass halt dieser 
Hostkernel genutzt wird. 

115
00:06:01,200 --> 00:06:03,120
Und als Beispiel hatten wir ja 
da Docker genannt. 

116
00:06:03,120 --> 00:06:05,040
Ich denk mal, wir werden heute 
auch noch mal so auf Docker 

117
00:06:05,040 --> 00:06:06,560
kommen, ist immer n. 
Gutes Beispiel, ist halt auch 

118
00:06:06,560 --> 00:06:09,360
einfach so der Marktführer. 
Ja also ich glaub an Docker 

119
00:06:09,360 --> 00:06:12,520
kommt man nicht vorbei bitte. 
Kannst du auch Potman nehmen 

120
00:06:12,520 --> 00:06:13,440
oder so? 
Gibt es ja auch. 

121
00:06:13,680 --> 00:06:15,760
Ja, aber wie gesagt ist es halt 
so. 

122
00:06:15,760 --> 00:06:19,760
Der Marktführer und ich glaube, 
dass das spätestens nee, nicht 

123
00:06:19,760 --> 00:06:22,000
spätestens eigentlich so, sobald
man sich mit dem Thema 

124
00:06:22,000 --> 00:06:23,720
beschäftigt, einem über den Weg 
läuft. 

125
00:06:23,720 --> 00:06:26,000
Also auf jeden Fall. 
Genau. 

126
00:06:26,400 --> 00:06:28,840
Aber bevor wir vielleicht noch 
mal zu Docker kommen und wie man

127
00:06:28,840 --> 00:06:31,840
vielleicht noch mal so n 
Container in unserem Kontext 

128
00:06:32,560 --> 00:06:36,120
containerisierung aufbaut, noch 
mal ganz kurz, warum das denn 

129
00:06:36,120 --> 00:06:40,200
für Def Ops wichtig ist, um das 
Mal in unsere bisherige Reihe 

130
00:06:40,200 --> 00:06:43,040
einzugliedern. 
Wir haben ja zum Beispiel über 

131
00:06:43,040 --> 00:06:47,040
Staging gesprochen, ja, dass man
halt in der Pipeline 

132
00:06:47,040 --> 00:06:51,240
unterschiedliche Stages hat, ne 
develop stage, ne Test Stage, 

133
00:06:51,240 --> 00:06:53,720
vielleicht dann die Prot Stage, 
wo halt wirklich die. 

134
00:06:54,640 --> 00:06:58,920
Der Service oder die Software an
sich produktiv läuft und da sind

135
00:06:58,920 --> 00:07:01,920
halt Container einfach absolut 
Gold wert um halt dieses 

136
00:07:01,920 --> 00:07:04,840
typische Problem und das hatten 
wir auch schon oft thematisiert 

137
00:07:04,840 --> 00:07:08,480
in Works on my Machine um dieses
Problem einfach zu verhindern 

138
00:07:08,480 --> 00:07:10,960
oder sehr stark zu minimieren, 
weil du halt. 

139
00:07:11,440 --> 00:07:14,240
Wie du ja so schön meintest, du 
hast ja diesen Container in 

140
00:07:14,240 --> 00:07:17,440
einer festen Umgebung und der 
hat halt immer die gleichen 

141
00:07:17,440 --> 00:07:20,440
Bedingungen, wenn ich den laufen
lasse sozusagen, und dadurch 

142
00:07:20,440 --> 00:07:22,480
sind wir halt 
plattformunabhängig. 

143
00:07:22,640 --> 00:07:28,360
Wir können halt auch schnell. 
Releasen oder Releases erzeugen,

144
00:07:28,360 --> 00:07:31,280
indem wir halt so 
standardisierte Images haben für

145
00:07:31,280 --> 00:07:34,640
diese Container und das ist halt
einfach ne grundlegende Basis 

146
00:07:34,640 --> 00:07:39,360
für unser CICD, für unsere 
Pipeline und das ermöglicht uns 

147
00:07:39,360 --> 00:07:43,240
halt erst überhaupt in der Dev 
OPS Welt so agil entwickeln zu 

148
00:07:43,240 --> 00:07:44,880
können. 
Am Ende ja, also das muss man ja

149
00:07:44,880 --> 00:07:47,680
noch mal ganz klar 
herauskristallisieren an dieser 

150
00:07:47,680 --> 00:07:49,520
Stelle. 
Ja, auf jeden Fall. 

151
00:07:50,400 --> 00:07:53,520
Ist auf jeden Fall definitiv 
wichtig, gerade wenn es jetzt 

152
00:07:53,520 --> 00:07:55,520
zum Beispiel auch um 
Dependencies und Abhängigkeiten 

153
00:07:55,520 --> 00:07:59,280
geht, wenn man sich vorstellt, 
man müsste lokal alles 

154
00:07:59,280 --> 00:08:02,840
konfigurieren auf seinem Rechner
und dann sozusagen noch den, ich

155
00:08:02,840 --> 00:08:06,560
sag mal, Server, auf dem die 
Anwendung läuft, vielleicht 

156
00:08:06,560 --> 00:08:09,040
einmal für Prot konfigurieren 
und einmal für. 

157
00:08:10,160 --> 00:08:13,200
Weiß nicht dev konfigurieren ne,
also ich sag mal im Normalfall 

158
00:08:13,200 --> 00:08:16,280
im Bestfall sollten die Stages 
gleich aufgebaut sein und die 

159
00:08:16,280 --> 00:08:19,600
gleichen Abhängigkeiten haben, 
aber Ausnahmen bestätigen die 

160
00:08:19,600 --> 00:08:22,440
Regel. 
Aber nein, aber was ich meine 

161
00:08:22,440 --> 00:08:25,080
ist, es wäre ja auch zum 
Beispiel blöd, wenn du sagst, du

162
00:08:25,080 --> 00:08:27,200
hast jetzt zum Beispiel eine 
Anwendung auf deinem Server 

163
00:08:27,200 --> 00:08:30,000
laufen nur noch eine andere und 
hast dann zum Beispiel bei der 

164
00:08:30,000 --> 00:08:33,200
einen Anwendung, hast du 
Abhängigkeiten ABC und bei der 

165
00:08:33,200 --> 00:08:37,400
anderen hast du AEF oder so ne 
als Abhängigkeiten um es so ein 

166
00:08:37,400 --> 00:08:42,280
bisschen meta Sprachemäßig zu 
das Ganze als Beispiel zu 

167
00:08:42,280 --> 00:08:45,280
bringen, aber. 
Du willst ja nicht dann auf 

168
00:08:45,280 --> 00:08:47,800
deinem Server einmal quasi die 
einen Abhängigkeiten 

169
00:08:47,800 --> 00:08:50,000
installieren und dann wenn du 
eine andere Anwendung laufen 

170
00:08:50,000 --> 00:08:52,520
lassen möchtest sozusagen 
gleichzeitig vielleicht noch wie

171
00:08:52,520 --> 00:08:54,960
wie willst du das hinkriegen und
so kannst du mit den mit den 

172
00:08:54,960 --> 00:08:56,800
Containern das ganze einfach 
viel viel schöner machen du 

173
00:08:56,800 --> 00:08:59,560
kannst sagen okay Anwendung 1 
läuft in Container 1 mit den 

174
00:08:59,560 --> 00:09:02,080
entsprechenden Abhängigkeiten 
die ich brauche und abhängig 

175
00:09:02,560 --> 00:09:05,120
Anwendung 2 läuft eben im 
Container 2 mit den 

176
00:09:05,120 --> 00:09:07,360
entsprechenden Abhängigkeiten 
die ich da brauche und die 

177
00:09:07,360 --> 00:09:10,360
kommen sich eben gegenseitig 
nicht ins Gehege nutzen aber die

178
00:09:10,360 --> 00:09:13,280
gleichen Ressourcen von deinem 
Server beispielsweise und das 

179
00:09:13,280 --> 00:09:16,320
ist ja sozusagen. 
Genau das, was im Endeffekt 

180
00:09:16,320 --> 00:09:21,560
wichtig ist oder wieso man dann 
vielleicht auch das ganze, wieso

181
00:09:21,560 --> 00:09:23,520
das Ganze so wichtig ist. 
Gerade wenn wir über 

182
00:09:23,520 --> 00:09:26,880
Orchestrierung reden oder 
Containerisierung, kommt ja 

183
00:09:26,880 --> 00:09:30,080
später noch, dann ist es ja 
nicht nur so, dass du meistens 

184
00:09:30,080 --> 00:09:33,680
ein Image irgendwie ein, also 
ein Docker Image laufen lässt 

185
00:09:33,840 --> 00:09:37,600
oder ein anderes nur also 1 auf 
einem Rechner oder einem Server,

186
00:09:37,680 --> 00:09:40,880
sondern meistens mehrere und 
darauf wollen wir ja im 

187
00:09:40,880 --> 00:09:43,240
Endeffekt dann hinaus. 
Genau. 

188
00:09:43,240 --> 00:09:45,280
Und wenn wir das Beispiel 
bringen, dann glaube ich, können

189
00:09:45,280 --> 00:09:48,440
wir noch mal ganz klar 
herausstellen, warum oder wo der

190
00:09:48,440 --> 00:09:50,720
große Vorteil gegenüber einer VM
dann ist. 

191
00:09:52,000 --> 00:09:54,720
Aber dazu später mehr. 
Lass uns mal noch so ein 

192
00:09:54,720 --> 00:09:58,480
bisschen drauf eingehen, wie man
überhaupt so ein Container baut,

193
00:09:58,480 --> 00:10:02,320
weil es gibt ja bestimmt auch 
Zuhörerinnen und Zuhörer, die 

194
00:10:02,320 --> 00:10:05,080
vielleicht noch da sich noch 
nicht beschäftigt haben und noch

195
00:10:05,080 --> 00:10:07,360
nicht so eine richtige 
Vorstellung haben, wie das 

196
00:10:07,600 --> 00:10:10,880
grundsätzlich vom Prinzip her. 
Abläuft. 

197
00:10:10,960 --> 00:10:14,760
Und ich finde, das kann man so 
ganz gut in 3 Schritten 

198
00:10:14,760 --> 00:10:16,880
gliedern. 
Ja also und da würde ich jetzt 

199
00:10:16,880 --> 00:10:19,920
wirklich mal Docker nehmen, weil
es halt wirklich wie gesagt sehr

200
00:10:19,920 --> 00:10:23,880
verbreitet ist und man dann halt
so nen direkten Bezug hat und 

201
00:10:23,880 --> 00:10:26,880
der erste Schritt. 
Ist im Prinzip so ne Art 

202
00:10:26,880 --> 00:10:30,800
Manifest aufzubauen, also eine 
Beschreibung und das kann man 

203
00:10:30,800 --> 00:10:33,440
ganz gut mit dem Docker File an 
sich vergleichen. 

204
00:10:33,440 --> 00:10:38,160
Ja also du beschreibst halt, wie
sieht mein Basisimage aus, ja 

205
00:10:38,160 --> 00:10:42,160
welche Daten werden benötigt, 
ich kopiere sie zum Beispiel aus

206
00:10:42,240 --> 00:10:46,600
meiner Route sozusagen in 
meinen, in mein Image, sozusagen

207
00:10:46,600 --> 00:10:50,400
in den Container installier 
dependencies und so weiter also 

208
00:10:50,400 --> 00:10:53,440
ich beschreib quasi, wie sieht 
meine Umgebung aus? 

209
00:10:53,600 --> 00:10:54,760
Genau. 
Also wenn du jetzt zum Beispiel 

210
00:10:54,760 --> 00:10:56,400
sagst Basis. 
Das Image, das könnte ja 

211
00:10:56,560 --> 00:11:00,720
beispielsweise so was sein wie, 
sagen wir mal so, ein Node 

212
00:11:00,720 --> 00:11:02,920
image. 
Es gibt ja auch zum Beispiel 

213
00:11:02,920 --> 00:11:05,360
dann, wenn Du von Docker redest,
auch bei Docker Hub gibt es ja 

214
00:11:05,360 --> 00:11:08,560
bestimmte Images, vorgefertigte,
wo du dann zum Beispiel sagst, 

215
00:11:08,560 --> 00:11:12,240
du kannst, lass mich jetzt nicht
lügen, ein Image von Node 20 

216
00:11:12,240 --> 00:11:13,800
haben, wenn du jetzt zum 
Beispiel, sagen wir mal, 

217
00:11:13,800 --> 00:11:17,080
irgendeine Anwendung mit Node 
entwickeln möchtest, dann ist es

218
00:11:17,080 --> 00:11:20,480
ja unbedingt notwendig, dass du 
das eben hast, so genau und 

219
00:11:20,720 --> 00:11:21,200
dann. 
Dann hast du. 

220
00:11:21,200 --> 00:11:22,640
Dann kannst du dir so ein Image 
ziehen. 

221
00:11:22,640 --> 00:11:26,440
Es gibt verschiedene Images, 
auch von offizieller Seite sage 

222
00:11:26,440 --> 00:11:28,960
ich jetzt mal, dass zum Beispiel
Node selber sagt okay, das sind 

223
00:11:28,960 --> 00:11:32,640
unsere offiziellen Images und 
die kann man als Basis Image 

224
00:11:32,640 --> 00:11:35,440
nehmen und sich zusätzlich noch 
eigene Sachen installieren, wie 

225
00:11:35,440 --> 00:11:38,880
du meintest diese dependencies 
und halt seine eigene Anwendung 

226
00:11:38,880 --> 00:11:42,240
noch sozusagen, also alle Files 
die man hat rein kopieren in 

227
00:11:42,240 --> 00:11:43,720
dieses Image. 
Es ist natürlich alles eine 

228
00:11:43,720 --> 00:11:47,400
textliche Beschreibung, was dann
also was da passieren soll, aber

229
00:11:47,400 --> 00:11:49,360
so kann man sich das ungefähr 
vorstellen, genau. 

230
00:11:50,520 --> 00:11:52,720
Genau, also wir hatten ja auch 
so n bisschen Infrastructure is 

231
00:11:52,720 --> 00:11:56,080
code, also hat mir ne eigene 
Folge zugemacht und so ähnlich 

232
00:11:56,080 --> 00:11:58,160
kannst du dir das jetzt hier 
auch vorstellen in diesem in 

233
00:11:58,160 --> 00:12:00,920
diesem Manifest. 
Also du schreibst, du Kodierst 

234
00:12:00,920 --> 00:12:05,760
quasi diesen Aufbau deiner 
Infrastruktur in diesem Docker 

235
00:12:05,760 --> 00:12:07,640
Image dann beispielsweise oder 
beziehungsweise in deinem 

236
00:12:07,640 --> 00:12:11,640
Container. 
Und das die Basisimages ist halt

237
00:12:11,640 --> 00:12:13,040
n sehr wichtiger Punkt den du 
ansprichst. 

238
00:12:13,200 --> 00:12:15,480
Das geht ja soweit, dass du auch
sagen kannst, ich möchte zum 

239
00:12:15,480 --> 00:12:17,600
Beispiel NN, Ubuntu Image oder 
so. 

240
00:12:17,600 --> 00:12:22,080
Ja also da gibt es halt Tausende
Varianten und auch sehr 

241
00:12:22,080 --> 00:12:24,960
spezifische, dass du halt schon 
gar nicht mehr so viel vorweg 

242
00:12:24,960 --> 00:12:27,360
konfigurieren musst, weil du 
einfach dir, so sag ich mal 

243
00:12:27,360 --> 00:12:29,760
deine. 
Grundbedingungen einfach schon 

244
00:12:29,760 --> 00:12:32,240
laden kannst über einen Base 
Image sozusagen. 

245
00:12:32,400 --> 00:12:35,280
Eine kleine Anmerkung dazu noch,
da würde ich glaube ich noch 

246
00:12:35,280 --> 00:12:37,360
sagen, dass auf jeden Fall, man 
kann sich unglaublich viele 

247
00:12:37,360 --> 00:12:39,040
verschiedene Images holen. 
Man sollte aber immer 

248
00:12:39,040 --> 00:12:43,680
reingucken, auf jeden Fall, was 
im Image steht und dass man sich

249
00:12:43,680 --> 00:12:46,200
vielleicht auch, das ist ja auch
der Gedanke dahinter, um 

250
00:12:46,200 --> 00:12:50,480
möglichst oft, also performant 
zu sein und sage ich jetzt mal 

251
00:12:50,480 --> 00:12:52,880
wenig, möglichst wenig 
Ressourcen zu verwenden. 

252
00:12:53,280 --> 00:12:55,600
Sollte man vielleicht gucken, 
dass man auch n Image verwendet,

253
00:12:55,600 --> 00:12:58,000
wo man wirklich das drin hat was
man braucht und nicht noch super

254
00:12:58,000 --> 00:12:58,560
viel? 
Ne. 

255
00:12:58,560 --> 00:13:01,120
Also wenn du jetzt zum Beispiel 
wirklich nur eine bestimmte 

256
00:13:01,120 --> 00:13:03,120
Sache brauchst, dann musst du 
dir jetzt vielleicht nicht zum 

257
00:13:03,120 --> 00:13:05,840
Beispiel so n ganzes Ubuntu 
Image holen, kann aber durchaus 

258
00:13:05,840 --> 00:13:08,760
hilfreich und notwendig sein, 
damit du nicht tausendmal sagst 

259
00:13:08,760 --> 00:13:10,720
so ach ich muss das noch 
nachinstallieren, ich muss das 

260
00:13:10,720 --> 00:13:12,640
noch nachinstallieren, ne. 
Genau so. 

261
00:13:13,560 --> 00:13:15,760
Genau. 
Das ist n sehr guter Aspekt, 

262
00:13:15,760 --> 00:13:18,560
weil es braucht natürlich auch 
seine Zeit, diese Images 

263
00:13:18,560 --> 00:13:20,800
aufzubauen und die Container 
später zu starten. 

264
00:13:21,200 --> 00:13:23,720
Das dann kommen wir nämlich auch
schon direkt zum zweiten 

265
00:13:23,720 --> 00:13:25,480
Schritt, wenn ich jetzt dieses 
Manifest hab und ich hab 

266
00:13:25,480 --> 00:13:28,600
beschrieben wieso n Image 
aussehen soll für meinen 

267
00:13:28,600 --> 00:13:31,720
Container später, da muss ich 
das natürlich bauen, ne, also 

268
00:13:31,720 --> 00:13:35,840
das enthält dann am Ende den 
Code ja also im Prinzip den ich 

269
00:13:35,840 --> 00:13:38,880
eigentlich ausführen möchte, 
mein Programm, mein Projekt so 

270
00:13:38,880 --> 00:13:42,000
gesehen. 
Ne Runtime die Libraries, da ist

271
00:13:42,000 --> 00:13:44,960
jetzt alles drin definiert Dank 
unseres Manifests. 

272
00:13:44,960 --> 00:13:47,840
Ja, also beispielsweise das 
Stockerfile und dann kann ich 

273
00:13:47,840 --> 00:13:50,880
dieses Image bauen und dann hab 
ich n fertiges Image was ich 

274
00:13:50,880 --> 00:13:54,400
ausführen kann, laufen lassen 
kann und im Prinzip meine 

275
00:13:54,400 --> 00:13:56,720
Anwendung beinhaltet. 
Ja, das stimmt. 

276
00:13:56,720 --> 00:13:58,880
Und. 
Der dritte Schritt ist ja dann 

277
00:13:58,880 --> 00:14:01,880
eigentlich sozusagen. 
Jetzt kommt der Container ins 

278
00:14:01,880 --> 00:14:06,960
Spiel, jetzt erstelle ich mir 
einen Container, der isoliert 

279
00:14:07,040 --> 00:14:09,840
eine Instanz dieses Images 
laufen lässt. 

280
00:14:10,160 --> 00:14:12,480
Das heißt ich hab ne 
abgekapselte Umgebung, wo mein 

281
00:14:12,480 --> 00:14:15,280
Image drin ausgeführt wird, wie 
ich es so beschrieben hab. 

282
00:14:15,280 --> 00:14:17,520
Ja, also im Endeffekt ja meine 
Anwendung. 

283
00:14:17,760 --> 00:14:22,120
Genau, also du hast im Endeffekt
das Image, ist sozusagen dieser 

284
00:14:22,120 --> 00:14:26,400
Bauplan ne und der Container ist
sozusagen ein ne, also. 

285
00:14:26,600 --> 00:14:30,280
Wie du schon meintest, das ist 
jetzt redundant, aber genau die 

286
00:14:30,280 --> 00:14:33,040
Instanz dieses Images. 
Das heißt du kannst es 

287
00:14:33,040 --> 00:14:36,280
theoretisch auch 5 Mal bauen und
5 mal laufen lassen, ne und dann

288
00:14:36,280 --> 00:14:40,520
hast du quasi 5 mal dein was 
weiß ich backend frontend frag 

289
00:14:40,520 --> 00:14:44,440
mich nicht anwendung XY halt 
laufen wenn du möchtest. 

290
00:14:45,400 --> 00:14:48,280
Genau und dadurch wie du ja 
meintest du dadurch, dass du es 

291
00:14:48,280 --> 00:14:51,120
mehrfach machen kannst, hast du 
halt dieses einheitliche Setup 

292
00:14:51,120 --> 00:14:53,960
ne und das kannst du halt für 
alles immer wieder verwenden, 

293
00:14:53,960 --> 00:14:57,520
zum Beispiel für Deployments. 
Ja, und dieses Prinzip dahinter 

294
00:14:57,600 --> 00:15:01,360
ist ja grundlegend gleich. 
Ja, also wir haben jetzt Stocker

295
00:15:01,360 --> 00:15:05,120
genommen, du hast Potman gesagt,
also es ist halt im Prinzip. 

296
00:15:05,400 --> 00:15:07,440
Ist immer der gleiche Ablauf am 
Ende? 

297
00:15:07,440 --> 00:15:10,040
Ja, das heißt dann vielleicht 
nicht Docker file 

298
00:15:10,040 --> 00:15:13,520
logischerweise, oder die Syntax 
ist anders, wie auch immer, aber

299
00:15:13,600 --> 00:15:15,920
ich sage mal, diese 3 Schritte 
sind halt so die die 

300
00:15:15,920 --> 00:15:19,120
grundlegenden Schritte die man 
da durchführen muss. 

301
00:15:19,280 --> 00:15:21,840
Ja, und wenn du jetzt zum 
Beispiel sagst, OK, du hast 

302
00:15:21,840 --> 00:15:24,880
jetzt eine CICD Pipeline, warum 
ist es vielleicht auch 

303
00:15:24,880 --> 00:15:27,200
interessant, zum Beispiel auch 
unterschiedliche Docker 

304
00:15:27,200 --> 00:15:29,600
Container zu nutzen und nicht, 
dass du beispielsweise sagst, 

305
00:15:29,840 --> 00:15:32,800
OK, ich nehme jetzt aber einfach
ein Docker Container und da 

306
00:15:32,800 --> 00:15:34,640
lasse ich alles drin laufen die 
ganze Zeit. 

307
00:15:35,200 --> 00:15:37,520
Also allein schon wenn du sagst,
du hast zum Beispiel eine 

308
00:15:37,520 --> 00:15:40,320
Anwendung mit einem Test 
Framework und du willst deine 

309
00:15:40,320 --> 00:15:43,280
Anwendung testen, so dann 
brauchst du natürlich dieses 

310
00:15:43,280 --> 00:15:47,520
Test Framework mit in deinen 
Dependencies, um sozusagen deine

311
00:15:47,520 --> 00:15:49,480
Tests laufen zu lassen. 
Aber in deiner produktiven 

312
00:15:49,480 --> 00:15:51,840
Umgebung brauchst du das Test 
Framework ja gar nicht, das 

313
00:15:51,840 --> 00:15:54,240
heißt, du kannst es einfach 
weglassen und das sozusagen raus

314
00:15:54,240 --> 00:15:56,800
optimieren. 
Kleines Beispiel aber um das Mal

315
00:15:56,800 --> 00:15:59,600
zu zeigen, wieso du zum Beispiel
vielleicht auch einfach 

316
00:15:59,600 --> 00:16:01,680
innerhalb deines Deployments 
vielleicht mehrere 

317
00:16:01,680 --> 00:16:03,680
Dockercontainer brauchst, dann 
der ist ja jetzt 2, aber. 

318
00:16:04,960 --> 00:16:07,680
Ja, ja, und es kann ja auch ne 
unterschiedliche Konfiguration 

319
00:16:07,680 --> 00:16:09,560
enthalten sein. 
Ne, dann hast du halt einmal sag

320
00:16:09,560 --> 00:16:12,240
ich mal n testimage oder prot 
Image und da sind aber 

321
00:16:12,240 --> 00:16:14,560
unterschiedliche 
Konfigurationen, zum Beispiel 

322
00:16:14,560 --> 00:16:18,200
gegen welchen Server da gecallt 
wird, mal so als Beispiel ne, 

323
00:16:18,400 --> 00:16:20,800
also das ist halt n sehr 
wichtiger Punkt den du da 

324
00:16:20,800 --> 00:16:23,720
genannt hast, dass du damit 
natürlich gerade dieses Staging 

325
00:16:23,720 --> 00:16:27,360
enorm unterstützen kannst. 
Am Ende ja genau. 

326
00:16:28,800 --> 00:16:33,040
Ja, aber warum ist denn jetzt 
kontainerisierung? 

327
00:16:33,040 --> 00:16:36,480
Ich nehm mal das deutsche Wort 
deutscher Podcast du hast recht,

328
00:16:36,480 --> 00:16:38,960
es ist eigentlich nicht mal n 
richtiges deutsches Wort, so 

329
00:16:38,960 --> 00:16:42,680
schön eingedeutscht, warum ist 
das jetzt so? 

330
00:16:42,680 --> 00:16:45,440
N Death Ofs Game Changer, das 
würd ich gern noch mal ganz klar

331
00:16:45,440 --> 00:16:48,720
herauskristallisieren, was wir 
daran halt so feiern oder 

332
00:16:48,720 --> 00:16:51,520
beziehungsweise die Death ofs 
Welt ja nicht nur wir beide. 

333
00:16:52,800 --> 00:16:55,280
Du hast halt dieses einheitliche
Deployment, das hattest du ja 

334
00:16:55,280 --> 00:16:56,720
glaube ich, eben schon so ein 
bisschen erwähnt. 

335
00:16:57,360 --> 00:17:00,560
Du kannst eben konsistente Bilds
erzeugen über deine 

336
00:17:00,560 --> 00:17:04,160
entsprechenden Umgebungen, was 
geht noch? 

337
00:17:04,160 --> 00:17:08,319
Schnelle Fehlerfindung und 
Behebung, weil du ja explizit 

338
00:17:08,319 --> 00:17:10,240
auch in diesen Einzelnen in 
diesen einzelnen 

339
00:17:10,240 --> 00:17:15,839
Dockercontainern eben deine 
einzelnen, sagen wir mal stages 

340
00:17:15,839 --> 00:17:18,640
hast oder oder Teile deiner 
Pipeline, wenn du es denn 

341
00:17:18,640 --> 00:17:21,640
richtig aufteilst. 
Was ja im Endeffekt auch dazu 

342
00:17:21,640 --> 00:17:24,880
führt, dass du nicht in einer 
großen Maschine oder auf einem 

343
00:17:24,880 --> 00:17:27,480
großen Server in 1000 logs 
irgendwie rumsuchst. 

344
00:17:27,480 --> 00:17:30,800
So was ist denn jetzt hier, was 
ist da, sondern du hast halt in 

345
00:17:30,800 --> 00:17:33,840
in in Container und nicht nur, 
dass du sagst, du hast n 

346
00:17:33,840 --> 00:17:39,520
Container für zum Beispiel. 
Weiß nicht deine deine CI oder 

347
00:17:39,520 --> 00:17:42,480
dein CI teil, beispielsweise ne 
wo vielleicht auch 

348
00:17:42,600 --> 00:17:46,600
beziehungsweise dein CD teil wo 
auch die Tests laufen. 

349
00:17:46,600 --> 00:17:49,280
Ne was ich gerade eben meinte es
ist ja nicht so, dass du dann 

350
00:17:49,280 --> 00:17:51,520
einen Container hast, wo du dann
immer wieder den Container 

351
00:17:51,520 --> 00:17:54,200
nimmst und deine Tests da drin 
sozusagen das erste Mal, das 

352
00:17:54,200 --> 00:17:56,400
zweite Mal das dritte Mal je 
nach Pipelinedurchlauf laufen 

353
00:17:56,400 --> 00:17:59,720
lässt, sondern du baust ja in 
jedem Pipeline auf, in jedem 

354
00:17:59,720 --> 00:18:02,320
Pipelinedurchgang wieder einen 
neuen Container. 

355
00:18:02,560 --> 00:18:05,840
Auf das heißt, du hast ja immer 
quasi eine kleine kleine 

356
00:18:05,840 --> 00:18:09,680
gekapselte Instanz, mit der du 
dann am Ende arbeiten kannst 

357
00:18:10,160 --> 00:18:13,040
beziehungsweise arbeiten im 
Sinne von wenn was schief geht 

358
00:18:13,040 --> 00:18:16,520
oder wenn du irgendwas 
nachgucken möchtest, dann kannst

359
00:18:16,520 --> 00:18:19,120
du halt relativ schnell auch 
eben gucken, was ist denn in 

360
00:18:19,120 --> 00:18:21,880
diesem einzelnen Container 
passiert und musst jetzt nicht 

361
00:18:21,880 --> 00:18:23,960
quasi noch alles, was vorher 
passiert ist, auch noch 

362
00:18:23,960 --> 00:18:27,240
durchgucken. 
Ja, du hast halt genau diese 

363
00:18:27,240 --> 00:18:30,160
isolierte Instanz am Ende ne und
du weißt dann genau, an welcher 

364
00:18:30,160 --> 00:18:35,840
Stelle es geknallt hat sozusagen
und das kann man halt auch super

365
00:18:35,840 --> 00:18:39,200
für die ganze Automatisierung 
einer Pipeline nutzen. 

366
00:18:39,200 --> 00:18:42,320
Ja was ja ne Pipeline erst 
interessant macht, wenn halt die

367
00:18:42,320 --> 00:18:46,400
ganzen manuellen Schritte 
rausfallen und das lässt sich 

368
00:18:46,400 --> 00:18:48,520
halt. 
Diese Container lassen sich halt

369
00:18:48,520 --> 00:18:51,760
super integrieren in so ne 
automatisierte Pipeline ne und? 

370
00:18:52,760 --> 00:18:56,400
Du kannst halt dann am Ende für 
für das Deployment dann ja auch 

371
00:18:56,400 --> 00:19:00,680
einfach diese Docker Images auch
wirklich deployen, sozusagen ne 

372
00:19:00,680 --> 00:19:03,440
und sagen OK, jetzt gibt es n 
neues Image ne neue Version 

373
00:19:03,440 --> 00:19:05,720
meiner Anwendung und die kann in
einem Docker Container 

374
00:19:05,720 --> 00:19:08,480
hochgefahren werden, 
beispielsweise ne dafür baust du

375
00:19:08,480 --> 00:19:11,920
das Halt auf, Testest das und 
dann kannst du das ja deployen 

376
00:19:11,920 --> 00:19:16,480
beispielsweise und. 
Ja, das ist ja voll integriert. 

377
00:19:16,560 --> 00:19:19,320
Wenn wir zum Beispiel in der 
github Welt unterwegs sind, hast

378
00:19:19,320 --> 00:19:24,000
du ja auch die github Registry, 
wo du quasi in deinem Repo ja 

379
00:19:24,000 --> 00:19:26,320
schon images bereitstellen 
kannst. 

380
00:19:26,320 --> 00:19:29,760
Am Ende ne mit Github Actions 
ist das halt super schnell 

381
00:19:29,760 --> 00:19:32,280
aufgesetzt, so eine ganz 
einfache Pipeline, das ist ja 

382
00:19:32,280 --> 00:19:37,920
wirklich mittlerweile so geil 
umgesetzt oder umsetzbar Feier 

383
00:19:37,920 --> 00:19:42,280
ich total und man muss natürlich
auch sagen, dass das auch eine 

384
00:19:42,280 --> 00:19:47,520
Grundlage ist und. 
Um überhaupt so Microservices, 

385
00:19:47,520 --> 00:19:50,560
Architekturen, ja wie sehr 
heutzutage gelebt werden, 

386
00:19:51,120 --> 00:19:55,200
aufsetzen zu können durch 
Container und man nicht mehr 

387
00:19:55,200 --> 00:19:58,560
halt riesen Monolithen hat. 
Liebe, zuhören, liebe Zuhörer, 

388
00:19:58,560 --> 00:20:01,120
falls das n Thema für dich ist, 
dann meld dich doch gerne bei 

389
00:20:01,120 --> 00:20:02,480
uns. 
Wir können gerne mal ne Folge 

390
00:20:02,480 --> 00:20:05,840
machen zu Monolithen versus 
Microservices. 

391
00:20:05,840 --> 00:20:09,040
Ja das ist n super spannendes 
Thema und wovor und Nachteile da

392
00:20:09,040 --> 00:20:12,800
drin liegen. 
Und wenn wir schon beim Thema 

393
00:20:12,800 --> 00:20:15,560
Microservices sind, kommen wir 
eigentlich zum zweiten Punkt der

394
00:20:15,560 --> 00:20:18,000
heutigen Folge zur 
Orchestrierung. 

395
00:20:18,160 --> 00:20:20,480
Weil jetzt wird es ja spannend. 
Was macht man mit den 

396
00:20:20,480 --> 00:20:22,880
Containern? 
Ja, und vielleicht magst du ja 

397
00:20:22,880 --> 00:20:27,360
mal kurz so ne Einführung geben,
Fabi was Orchestrierung ist 

398
00:20:27,360 --> 00:20:29,920
eigentlich. 
Genau also, wenn man sich das 

399
00:20:29,920 --> 00:20:32,400
jetzt vorstellt. 
Und du sagst ja OK, also 

400
00:20:32,400 --> 00:20:34,400
Orchestrierung kommt ja erstmal 
wirklich von. 

401
00:20:35,280 --> 00:20:38,000
Von Orchester. 
Also du hast ja quasi. 

402
00:20:38,600 --> 00:20:40,080
Surprise. 
Surprise. 

403
00:20:41,280 --> 00:20:45,280
Da ich, ich weiß nicht, das ist 
richtig, manchmal ist mein Kopf 

404
00:20:45,280 --> 00:20:48,080
auch so richtig dumm, ne, weil 
ich ja so früher so redest du da

405
00:20:48,080 --> 00:20:50,640
drüber und denkst so 
Orchestrierung, Orchestrierung, 

406
00:20:50,640 --> 00:20:53,360
das klingt irgendwie, es klingt 
irgendwie wie Orchester so, also

407
00:20:53,360 --> 00:20:56,560
das ist ja, und da sind du so, 
ah okay also. 

408
00:20:56,960 --> 00:20:59,200
Leider aber ist ein guter 
Hinweis ja also, dass man dann 

409
00:20:59,200 --> 00:21:01,520
hat man halt nämlich die 
perfekte Analogie, schon genau 

410
00:21:01,520 --> 00:21:04,000
also. 
Du komponierst im Endeffekt, oh 

411
00:21:04,000 --> 00:21:05,920
du, du setzt so. 
Sozusagen deine 

412
00:21:05,920 --> 00:21:09,840
Gesamtkomposition aus 
verschiedenen, also deine 

413
00:21:09,840 --> 00:21:12,240
Gesamtanwendungen aus 
verschiedenen Dockercontainern 

414
00:21:12,240 --> 00:21:14,040
zusammen. 
So gesehen ne, das ist genauso 

415
00:21:14,040 --> 00:21:15,600
wie ein Orchester, da setzt ja 
zum Beispiel auch so 

416
00:21:15,600 --> 00:21:18,880
verschiedene Musikinstrumente 
zusammen, die dann im Endeffekt 

417
00:21:19,080 --> 00:21:22,360
ein großes Ganzes ergeben. 
Und wenn du jetzt zum Beispiel 

418
00:21:22,360 --> 00:21:24,160
sagst okay, du hast jetzt 
vielleicht irgendwie so ein 2 

419
00:21:24,160 --> 00:21:26,480
Container, ist es jetzt an sich 
kein Ding, da musst du jetzt 

420
00:21:26,480 --> 00:21:28,720
nicht mit einer großen 
Orchestrierung starten und so 

421
00:21:28,720 --> 00:21:31,360
weiter aber wenn du jetzt 
wirklich in der heutigen Welt 

422
00:21:33,960 --> 00:21:37,280
sagen wir mal eine große 
Anwendung hast mit 

423
00:21:37,280 --> 00:21:39,600
verschiedenen, also wirklich 
auch mit so einer Micro Service 

424
00:21:40,160 --> 00:21:43,800
Architektur, das heißt, du hast 
quasi dein dein Deployment, du 

425
00:21:43,800 --> 00:21:46,240
hast deinen Server, da laufen 
dann zum Beispiel verschiedene 

426
00:21:46,240 --> 00:21:48,960
Services drauf, wie der Name ja 
schon sagt, also jeder Service 

427
00:21:48,960 --> 00:21:51,440
macht sein eigenes Ding, also du
hast dann vielleicht zum 

428
00:21:51,440 --> 00:21:53,560
Beispiel so was wie ein 
Authentication Service, das ist 

429
00:21:53,560 --> 00:21:56,400
ein eigener Service, der in 
einem eigenen Docker Container 

430
00:21:56,400 --> 00:22:00,640
läuft, genauso wie zum Beispiel 
dann weiß ich nicht das eine der

431
00:22:00,640 --> 00:22:03,400
eine Teil deiner App und der 
andere Teil also wie gesagt 

432
00:22:03,400 --> 00:22:04,760
Microsoft ist. 
Das können wir auch noch mal ein

433
00:22:04,760 --> 00:22:07,360
bisschen genauer behandeln. 
In einer eigenen Podcast Folge 

434
00:22:07,360 --> 00:22:10,000
will ich jetzt nicht genau 
darauf eingehen, aber man muss 

435
00:22:10,000 --> 00:22:13,120
sich das ungefähr so vorstellen,
dass wenn du eine Anwendung 

436
00:22:13,120 --> 00:22:16,640
hast, die aus verschiedenen 
Teilen besteht, kannst du rein 

437
00:22:16,640 --> 00:22:19,680
theoretisch diese Teile auch 
einfach trennen und nicht in 

438
00:22:19,680 --> 00:22:22,880
einen großen Batzen haben, 
sondern das wirklich sozusagen 

439
00:22:23,200 --> 00:22:26,240
in einzelne kleine Anwendungen 
trennen, die du dann aber 

440
00:22:26,720 --> 00:22:29,200
jeweils in einem Docker 
Container laufen lässt und dann 

441
00:22:29,200 --> 00:22:32,560
sozusagen muss das ganze ja 
irgendwie zusammen spielen, das 

442
00:22:32,560 --> 00:22:35,280
heißt du brauchst dann. 
Ja, irgendwie vielleicht 

443
00:22:35,280 --> 00:22:37,600
Connections untereinander, die 
müssen kommunizieren können, wie

444
00:22:37,600 --> 00:22:39,680
auch immer, ne. 
Aber Fakt ist auf jeden Fall, du

445
00:22:39,680 --> 00:22:43,280
hast dann deine ganzen Container
und damit das aber auch alles 

446
00:22:43,280 --> 00:22:46,240
zusammen funktioniert, musst du 
halt und jetzt kommt genau der 

447
00:22:46,240 --> 00:22:52,160
Punkt das ganze Orchestrieren ne
aber Orchestrierung an sich ist 

448
00:22:52,160 --> 00:22:55,280
ja nicht nur, dass du sagst du 
hast deine ganzen Container 

449
00:22:55,280 --> 00:22:57,760
zusammen, ne die dann vielleicht
in einem. 

450
00:22:58,320 --> 00:23:01,440
Großen Cluster laufen ne, hier 
zum Beispiel auch, Stichwort 

451
00:23:01,520 --> 00:23:04,960
Cubanitis ne cubanitis 
cubanitis. 

452
00:23:05,680 --> 00:23:08,080
Ist. 
Jetzt wieder so prädestiniert 

453
00:23:08,080 --> 00:23:11,920
dafür, dass man es falsch 
ausspricht oder jeder es anders 

454
00:23:11,920 --> 00:23:14,400
ausspricht. 
Aber es gibt ja auch noch andere

455
00:23:14,400 --> 00:23:17,760
Sachen, die Halt wichtig sind 
bei einer Orchestrierung, ne. 

456
00:23:19,840 --> 00:23:23,920
Ja, also im Prinzip. 
Hast du ja zum Beispiel auch 

457
00:23:23,920 --> 00:23:26,960
dieses Starten und stoppen von 
Containern, ne? 

458
00:23:26,960 --> 00:23:30,680
Also da noch mal dieses 
orchesterbeispiel du dirigierst 

459
00:23:30,680 --> 00:23:33,640
das ganze ne, du bist jetzt das 
System was die Container 

460
00:23:33,640 --> 00:23:38,000
verwaltet und zeigst halt 
sozusagen jetzt bist du dran, 

461
00:23:38,000 --> 00:23:42,240
jetzt hörst du auf du und so 
weiter ne jetzt laufen die so 

462
00:23:42,240 --> 00:23:45,120
ich find das ist halt wirklich 
ne gute Analogie ja also du du 

463
00:23:45,120 --> 00:23:48,400
dirigierst das ganze ne und 
sagst welcher Container läuft 

464
00:23:48,400 --> 00:23:52,400
und welcher nicht genauso. 
Hast du ja zum Beispiel auch in 

465
00:23:52,400 --> 00:23:56,640
einem Orchester von einem 
Instrumententyp, was jetzt mal 

466
00:23:56,640 --> 00:23:59,120
ein spezieller Container in 
unserem Fall wäre. 

467
00:23:59,120 --> 00:24:02,560
Ne, mehrere Instanzen, du hast 
ja mehrere Spieler und 

468
00:24:02,560 --> 00:24:06,400
Spielerinnen davon, ja zum 
Beispiel die Geige, geigen, die 

469
00:24:06,400 --> 00:24:08,920
erste Geige ist Beispiel. 
Spielst du die erste und die 

470
00:24:08,960 --> 00:24:13,200
zweite Geige? 
Und das ist nämlich genau der 

471
00:24:13,200 --> 00:24:15,640
nächste Punkt, was bei der 
Orchesterierung wichtig ist. 

472
00:24:15,640 --> 00:24:18,000
Und zwar Skalierung. 
Ja, brauche ich von diesem 

473
00:24:18,080 --> 00:24:22,080
Container mehr Instanzen oder 
weniger, je nach Last? 

474
00:24:22,080 --> 00:24:26,000
Ja, also du hast halt auch im 
Prinzip N Load balancing. 

475
00:24:26,680 --> 00:24:29,120
Du verteilst die Anfragen dann 
gleichmäßig. 

476
00:24:29,120 --> 00:24:32,800
Ne, also logischerweise wenn ich
jetzt 4 geigenspieler hab, dann 

477
00:24:32,800 --> 00:24:35,600
darf ja der eine nicht alle 4 
spielen, oder wie soll er das 

478
00:24:35,600 --> 00:24:38,160
machen, der ist ja sofort 
überfordert und das geht halt 

479
00:24:38,160 --> 00:24:41,440
nicht, also verteile ich quasi 
das auf die 4 Geigen zum 

480
00:24:41,440 --> 00:24:44,880
Beispiel und das sind alles so 
Themen was die Orchestrierung 

481
00:24:44,880 --> 00:24:50,000
beinhaltet, da gibt es natürlich
noch spezifische Sachen wie Cell

482
00:24:50,000 --> 00:24:54,240
Feeling ist ein riesen Punkt, ja
wenn zum Beispiel ein Crash 

483
00:24:54,240 --> 00:24:57,280
erkannt wird. 
Ja, dass du sagst, Oh, den 

484
00:24:57,280 --> 00:24:58,840
Container muss ich mal neu 
starten, da ist so was 

485
00:24:58,840 --> 00:25:01,360
schiefgelaufen, aber ich muss 
irgendwie wieder n Zustand n 

486
00:25:01,360 --> 00:25:06,000
heilen Zustand erreichen, dass 
das Ding wieder läuft, am Ende 

487
00:25:06,960 --> 00:25:09,040
keine Ahnung, der Geigenspieler 
fällt vom Stuhl. 

488
00:25:09,040 --> 00:25:12,000
Ja und das klingt einmal 
komisch, aber du musst ja wieder

489
00:25:12,000 --> 00:25:14,560
n Zustand erreichen, dass es 
wieder harmonisch klingt am 

490
00:25:14,560 --> 00:25:17,280
Ende, indem du den Stuhl wieder 
hinstellst und den Geigenspieler

491
00:25:17,360 --> 00:25:23,640
da drauf setzt beispielsweise ja
und dann gibt es natürlich den 

492
00:25:23,640 --> 00:25:25,760
Rollbacks. 
Ja, das passiert nur 

493
00:25:25,760 --> 00:25:28,600
Geigenspieler. 
Und wenn das alles nicht hilft 

494
00:25:28,600 --> 00:25:30,880
und der jedes Mal wieder vom 
Stuhl fällt, dann machst du halt

495
00:25:30,880 --> 00:25:34,720
n rollback und sagst OK, der 
neue Geigenspieler, das war 

496
00:25:34,720 --> 00:25:37,760
keine gute Idee, ich nehm die 
wieder raus, ich nehm wieder den

497
00:25:37,760 --> 00:25:41,640
alten. 
Also um das ganze technisch kurz

498
00:25:41,640 --> 00:25:44,520
zu machen. 
Wenn ich jetzt ne neue Version 

499
00:25:44,520 --> 00:25:46,880
hab von meiner Software und da 
läuft irgendwas schief ne und 

500
00:25:46,880 --> 00:25:49,560
das Self Feeling funktioniert 
nicht, irgendwie crasht das die 

501
00:25:49,560 --> 00:25:52,320
ganze Zeit, dann hab ich 
natürlich auch über meine 

502
00:25:52,320 --> 00:25:55,840
Orchestrierung die Möglichkeit n
Royback zu machen und zu sagen 

503
00:25:57,280 --> 00:26:00,160
ich dreh das Ganze auf die alte 
Version zurück und hab erst mal 

504
00:26:00,160 --> 00:26:03,760
wieder n sauberen Zustand. 
Ne, und das sind halt Rollouts. 

505
00:26:03,840 --> 00:26:07,280
Ich kann automatisiert neue 
Versionen ausrollen, ne und zur 

506
00:26:07,280 --> 00:26:10,480
Verfügung stellen und rollbacks,
ich kann sie automatisch wieder 

507
00:26:10,480 --> 00:26:14,560
zurückdrehen, sozusagen und 
wieder auf ne alte Version gehen

508
00:26:14,640 --> 00:26:17,840
und das sind so typische 
Anwendungsfälle, genau also. 

509
00:26:17,840 --> 00:26:20,080
Gerade wenn wir jetzt sagen, Def
Ops hat ja natürlich 

510
00:26:20,080 --> 00:26:23,040
logischerweise viel mit 
Automatisierung zu tun, wie du 

511
00:26:23,040 --> 00:26:25,320
ja auch schon meintest. 
Man möchte sich ja nicht 

512
00:26:25,320 --> 00:26:28,160
vorstellen. 
Angenommen, irgendein Service 

513
00:26:28,160 --> 00:26:30,560
Crash bei was weiß ich 
irgendeinem großen Riesen 

514
00:26:30,560 --> 00:26:33,520
Unternehmen ne vielleicht 
irgendwas mit Social Media oder 

515
00:26:33,520 --> 00:26:36,080
frag mich nicht oder hier 
irgendwas im E Commerce Bereich 

516
00:26:36,080 --> 00:26:39,040
und dann gibt's dann irgendwie 
weißt du dann kommt so die Task 

517
00:26:39,040 --> 00:26:42,400
Force Gruppe setzt sich an die 
an die Rechner schaltet sich auf

518
00:26:42,400 --> 00:26:45,160
die Server dann Container 1 sind
wieder hochgefahren Container 2 

519
00:26:45,160 --> 00:26:48,360
ich hab wieder gestartet ja 
Service 3 ist wieder online so 

520
00:26:48,360 --> 00:26:51,360
weißt du und dann so nein sie 
gehen wieder down sie gehen 

521
00:26:51,360 --> 00:26:55,120
wieder down verdammt. 
So, da kommt die, da kommt die 

522
00:26:55,120 --> 00:26:58,000
zweite Taskforce Gruppe, die das
Ganze dann ne irgendwie 

523
00:26:58,080 --> 00:27:01,040
programmieren Bug fixen muss und
so weiter aber in der Zeit 

524
00:27:01,040 --> 00:27:03,600
passiert halt nichts und 
deswegen kannst du halt zum 

525
00:27:03,600 --> 00:27:05,680
Beispiel mit einem 
automatisierten Rollback, wo 

526
00:27:05,680 --> 00:27:08,320
jetzt auch wieder Stichwort 
Monitoring mit dazu kommt, ne du

527
00:27:08,320 --> 00:27:11,120
musst ja wissen, OK. 
Geht denn irgendwas die ganze 

528
00:27:11,120 --> 00:27:13,800
Zeit schief, damit du dann 
automatisiert über deine 

529
00:27:13,800 --> 00:27:16,640
Orchestrierung sozusagen auf so 
n bestimmtes Signal reagieren 

530
00:27:16,640 --> 00:27:18,480
kannst? 
Um zu sagen, OK, pass auf, da 

531
00:27:18,640 --> 00:27:21,240
ist jetzt n Problem aufgetreten.
Wir müssen jetzt zum Beispiel 

532
00:27:21,240 --> 00:27:23,520
wieder auf die letzte stabile 
Version zurückrollen, das was 

533
00:27:23,520 --> 00:27:25,320
wir jetzt gerade neu gemacht 
haben, das funktioniert nicht 

534
00:27:25,320 --> 00:27:29,280
und dann läuft wieder alles 
Punkt 1 und Punkt 2 ist das Team

535
00:27:29,280 --> 00:27:32,720
was die Bugs dann fixt sag ich 
jetzt mal dem was ich gerade 

536
00:27:32,720 --> 00:27:35,760
gesagt hab, das kann sich dann 
vielleicht bisschen mehr Zeit 

537
00:27:35,760 --> 00:27:38,000
lassen oder ist nicht ganz so 
hektisch. 

538
00:27:39,280 --> 00:27:41,480
Ne. 
Ja, ich mein, da braucht man 

539
00:27:41,480 --> 00:27:45,040
sich ja nur wieder die Analogien
nehmen mit dem echten Orchester.

540
00:27:45,040 --> 00:27:48,480
Ne, also der Dirigent vorne, der
hat ja n unfassbar schwierigen 

541
00:27:48,480 --> 00:27:50,800
Job. 
Ja, also er muss ja absolut 

542
00:27:50,800 --> 00:27:54,480
akkurat sein, er muss genau 
wissen wer was macht, jetzt muss

543
00:27:54,480 --> 00:27:58,440
das richtig signalisieren, damit
das ganze Orchester das genauso 

544
00:27:58,440 --> 00:28:01,600
spielt, wie es gedacht ist. 
Das Werk, ja und? 

545
00:28:02,520 --> 00:28:05,360
Und jetzt macht er das ja 
manuell, in dem Fall. 

546
00:28:05,680 --> 00:28:08,160
Wie lange macht er das? 
Keine Ahnung wie lange sowas 

547
00:28:08,160 --> 00:28:11,280
geht, er hat ja Pausen 
dazwischen, aber sagen wir mal 

548
00:28:11,280 --> 00:28:17,360
so er muss nicht wie in unseren 
Anwendungsfallen 24 7 jetzt so 

549
00:28:17,360 --> 00:28:21,480
ein Orchester da leiten, weil 
das würde einfach zwangsläufig 

550
00:28:21,480 --> 00:28:24,960
zu Fehlern führen und genau das 
ist nämlich der Punkt, wie du ja

551
00:28:24,960 --> 00:28:27,440
schon meintest, das geht manuell
nicht, wir brauchen irgendwie 

552
00:28:27,440 --> 00:28:30,680
toolische Unterstützung um das 
automatisiert hinzukriegen und 

553
00:28:30,680 --> 00:28:32,440
ich finde da kann man die 
Analogie halt auch. 

554
00:28:32,520 --> 00:28:35,120
Hochziehen, weil wie lange würde
das n Dirigent wirklich 

555
00:28:35,120 --> 00:28:37,920
durchhalten am Stück ja ohne 
Fehler zu machen. 

556
00:28:38,080 --> 00:28:42,480
Ja, richtig, also ab jetzt 
Dirigenten immer automatisieren.

557
00:28:43,120 --> 00:28:45,280
Immer Props raus, ihr macht n 
geilen Job. 

558
00:28:46,320 --> 00:28:49,360
Ja, aber auf jeden Fall. 
Wenn ihr das jetzt nimmst, dann 

559
00:28:49,360 --> 00:28:52,160
ist es natürlich so, dass wenn 
wir jetzt von Containern reden, 

560
00:28:52,160 --> 00:28:54,640
dann ist n Container im 
Endeffekt ein Spieler im 

561
00:28:54,640 --> 00:28:59,000
Orchester oder eine Spielerin 
und die Orchestrierung an sich 

562
00:28:59,000 --> 00:29:01,400
sozusagen, das ist dann 
sozusagen der Dirigent, ne, also

563
00:29:01,400 --> 00:29:02,560
der. 
Übernimmt dann die 

564
00:29:02,560 --> 00:29:04,280
Orchestrierung. 
So, dann haben wir es noch mal. 

565
00:29:04,280 --> 00:29:06,400
Nicht ich finde, das ist auch 
ein schönes Beispiel, weil der 

566
00:29:06,400 --> 00:29:08,720
Klassiker, den können wir ja 
auch nennen, ist natürlich der 

567
00:29:08,720 --> 00:29:12,120
Container. 
Ist so ein Schiff, ja oder so 

568
00:29:12,120 --> 00:29:15,200
ein Container am Hafen und die 
Orchestrierung ist dann 

569
00:29:15,200 --> 00:29:18,720
sozusagen der Hafenmeister, der 
gesagt, sagt Okay Schiff dahin, 

570
00:29:18,720 --> 00:29:21,160
Schiff dahin oder keine Ahnung, 
den Container stellst du da 

571
00:29:21,160 --> 00:29:25,200
drauf, den da drauf, also man 
kann das natürlich auch auf die 

572
00:29:25,200 --> 00:29:30,800
schiffsfahrten mappen, sage ich.
Mal wegen Container ganz genau. 

573
00:29:31,840 --> 00:29:33,600
Warte mal. 
Bei Docker gab es doch auch, ist

574
00:29:33,600 --> 00:29:36,960
doch sogar das Ganze in dem in 
dem in dem Bild drin von Docker.

575
00:29:37,840 --> 00:29:40,200
Ja, stimmt. 
Der war mit dem Container. 

576
00:29:41,280 --> 00:29:42,720
Genau. 
Ja, es ist. 

577
00:29:42,720 --> 00:29:44,840
Es ist einfach naheliegend. 
Deswegen finde ich es gut, dass 

578
00:29:44,840 --> 00:29:49,920
wir das mit dem Orchester 
machen, aber kommen wir mal zu 

579
00:29:49,920 --> 00:29:52,320
weiteren Analogien und 
Beispielen. 

580
00:29:53,160 --> 00:29:56,760
Und zwar möchte ich sehr gerne 
eine Analogie noch mal 

581
00:29:56,760 --> 00:29:58,080
aufgreifen. 
Die haben wir einfach schon 

582
00:29:58,080 --> 00:30:00,240
gebracht, die ist bekannt in 
unserem Podcast. 

583
00:30:00,240 --> 00:30:03,160
Und zwar möchte ich wieder in 
die Welt der Restaurants mit dir

584
00:30:03,160 --> 00:30:07,360
eintauchen, jetzt wird es wieder
kulinarisch, es wird kulinarisch

585
00:30:07,360 --> 00:30:12,000
hier im Coding Buddies Podcast. 
Hol dir was denn genau? 

586
00:30:12,000 --> 00:30:18,160
Kurze Snackpause und zwar um 
einfach noch mal klarzustellen, 

587
00:30:18,160 --> 00:30:21,760
wie sieht die VM Welt aus und. 
Und wie sieht jetzt unsere neu 

588
00:30:21,760 --> 00:30:24,000
beschriebene 
Kontinuierisierungswelt aus? 

589
00:30:24,000 --> 00:30:26,160
Ja, hau raus und wenn wir jetzt 
noch mal so in der 

590
00:30:26,160 --> 00:30:28,800
Restaurantwelt sind und wir 
gehen noch mal in die VM Welt, 

591
00:30:28,800 --> 00:30:33,040
wie du meintest eigenes OS ne 
und schwergewichtig jetzt stell 

592
00:30:33,680 --> 00:30:36,480
dir vor du hast n Restaurant, du
hast ja viele Gerichte ja also 

593
00:30:36,720 --> 00:30:39,440
du hast ja ne Karte, da ist 
wieder unser Menü sagen wir mal 

594
00:30:39,440 --> 00:30:43,400
du hast ne feine aber gute 
Auswahl so ne ne kleine 20 

595
00:30:43,400 --> 00:30:49,120
Gerichte so. 
In der VM Welt so gesehen würde 

596
00:30:49,120 --> 00:30:53,280
das bedeuten, ich muss jetzt für
jedes Gericht ne eigene 

597
00:30:53,280 --> 00:30:56,080
komplette Küche aufbauen. 
Ja, also ich muss mir jetzt ne 

598
00:30:56,080 --> 00:31:00,160
Welt schaffen wo ne Küche drin 
ist um dieses Gericht quasi. 

599
00:31:00,560 --> 00:31:03,840
Herstellen zu können, und das 
ist logischerweise teuer und 

600
00:31:03,840 --> 00:31:07,680
Ressourcenverschwendung einfach 
am Ende, weil ich kann jetzt 

601
00:31:07,680 --> 00:31:10,720
nicht getrennte Gerichte machen,
sondern entweder ich mach alle 

602
00:31:10,720 --> 00:31:14,800
Gerichte auf einmal in einer, 
also weißt du in einer Umgebung 

603
00:31:14,960 --> 00:31:18,320
oder ich muss mir halt wirklich 
mehrere Küchen aufbauen und das 

604
00:31:18,320 --> 00:31:22,880
ist natürlich einfach Quatsch 
und deswegen kontinuierisierung 

605
00:31:22,880 --> 00:31:26,800
bedeutet, ich habe ne Großküche 
wie in einem Restaurant mit 

606
00:31:26,800 --> 00:31:28,560
geteilten Ressourcen. 
Zum Beispiel? 

607
00:31:28,560 --> 00:31:31,440
Ich habe einen Herd, ich habe 
einen Kühlschrank und so weiter.

608
00:31:31,440 --> 00:31:33,720
Aber da kann ich noch mal gleich
einhaken, weil das ist. 

609
00:31:33,720 --> 00:31:36,320
Das zeigt nämlich auch noch mal,
dass du ja zum Beispiel, wenn 

610
00:31:36,320 --> 00:31:38,560
gerade wenn du jetzt zum 
Beispiel sagst, du hast eine 

611
00:31:38,560 --> 00:31:41,040
Küche, wo du alles kochen 
willst, kann es natürlich sein, 

612
00:31:41,040 --> 00:31:44,480
dass es vielleicht in der einen 
Küche eventuell nicht unbedingt 

613
00:31:44,480 --> 00:31:47,400
auch immer das gibt, was du auch
wirklich brauchst für das 

614
00:31:47,400 --> 00:31:48,920
entsprechende Gericht. 
Also du kannst vielleicht nicht 

615
00:31:48,920 --> 00:31:51,440
alle Gerichte wirklich in einer 
Küche kochen, so ne. 

616
00:31:52,320 --> 00:31:56,320
Ja. 
Und genau, wenn du dir jetzt 

617
00:31:56,320 --> 00:31:59,360
vorstellst, wenn ich so n 
Gericht herstelle, dann hab ich 

618
00:31:59,360 --> 00:32:04,000
ja verschiedene Stationen. 
Ja die die irgendwie notwendig 

619
00:32:04,000 --> 00:32:07,840
sind dafür oder halt Stichwort 
Manifest noch mal unsere 

620
00:32:07,840 --> 00:32:11,080
Umgebung, die ich dafür brauche 
für das eine Gericht brauch ich 

621
00:32:11,080 --> 00:32:14,320
n Topf für das andere brauch ich
ne Pfanne und so weiter für 

622
00:32:14,320 --> 00:32:15,640
manche vielleicht auch Topf und 
Pfanne. 

623
00:32:16,160 --> 00:32:19,200
OK, aber. 
Aber am Ende hab ich ne saubere 

624
00:32:19,200 --> 00:32:20,880
Trennung. 
Ne, das heißt ich hab nur meine 

625
00:32:20,880 --> 00:32:23,440
Zutaten und ich hab diese 
Station und dann kann ich halt 

626
00:32:23,440 --> 00:32:28,480
meine Gerichte herstellen und 
der Vorteil dabei ist Stichwort 

627
00:32:28,480 --> 00:32:32,200
Skalierbarkeit was wir gezeigt 
haben ey wir müssen jetzt 

628
00:32:32,200 --> 00:32:35,120
mehrfach mehrfach dieses Gericht
kochen. 

629
00:32:35,440 --> 00:32:38,040
Ja OK ist ja kein Problem weil 
ich muss ja jetzt nicht jedes 

630
00:32:38,040 --> 00:32:41,960
mal ne neue Küche aufbauen, gib 
mir einfach mehr Töpfe und das 

631
00:32:41,960 --> 00:32:44,800
ist nämlich genau der Knackpunkt
dabei, ich setz einfach mehr 

632
00:32:44,800 --> 00:32:48,160
Töpfe damit auf. 
Und habe am Ende quasi mehrere 

633
00:32:48,160 --> 00:32:50,960
Instanzen, wo dieses Gericht 
gekocht wird. 

634
00:32:51,200 --> 00:32:55,080
Richtig, gehen wir jetzt mal 
davon aus, dass man auch auf dem

635
00:32:55,080 --> 00:32:57,520
gleichen Herd mehr Töpfe 
platzieren kann. 

636
00:32:58,720 --> 00:33:01,000
Das gibt mir einen weiteren 
Herd, aber gibt mir nicht eine 

637
00:33:01,000 --> 00:33:05,160
neue. 
Küche nee, aber das ist eine 

638
00:33:05,160 --> 00:33:10,080
gute Analogie, weil im Endeffekt
hast du ja dann die Möglichkeit.

639
00:33:10,600 --> 00:33:14,800
Ne ohne diese riesen Ressourcen 
die du aufwenden müsstest um 

640
00:33:14,800 --> 00:33:17,600
sozusagen jetzt zu sagen, ey ich
brauch noch n zweiten Herd OK 

641
00:33:17,680 --> 00:33:20,320
für n zweiten Herd nehm ich noch
ne zweite Küche dazu. 

642
00:33:20,320 --> 00:33:24,600
Super Sache passt ja, das wär 
natürlich genau Quatsch und 

643
00:33:24,600 --> 00:33:26,640
jetzt kommt natürlich jetzt zum 
Beispiel die Orchestrierung mit 

644
00:33:26,640 --> 00:33:32,880
rein ne oder beziehungsweise ne 
unsere unsere wie sagt man 

645
00:33:33,200 --> 00:33:37,880
containerfizierung was ist das 
das deutsche Wort? 

646
00:33:39,520 --> 00:33:43,080
Oder also, wenn wir jetzt solche
Cubanitis nehmen, und das wäre 

647
00:33:43,080 --> 00:33:46,320
ja dann im Endeffekt so der 
Vergleich zum Küchenchef. 

648
00:33:46,480 --> 00:33:50,400
Ne, weil genau. 
Der Küchenchef weiß ja dann zum 

649
00:33:50,400 --> 00:33:54,240
Beispiel, wie zum Beispiel auch 
der Dirigent im im Orchester, 

650
00:33:54,240 --> 00:33:56,400
wieviel Töpfe werden denn 
benötigt. 

651
00:33:56,640 --> 00:34:00,320
Ne, also weil zum Beispiel der 
es man weiß ja dann OK wieviel 

652
00:34:00,320 --> 00:34:02,520
Bestellung kommen überhaupt 
rein, was muss denn überhaupt 

653
00:34:02,520 --> 00:34:05,360
gekocht werden, ne Stichwort 
Load balancing zum Beispiel, das

654
00:34:05,360 --> 00:34:08,000
heißt du kannst dann im 
Endeffekt genau dirigieren und 

655
00:34:08,000 --> 00:34:10,639
sagen das. 
Als Küchenchef. 

656
00:34:10,639 --> 00:34:13,480
So jetzt bitte, wir brauchen so 
und so viel Töpfe, wir brauchen 

657
00:34:13,480 --> 00:34:16,880
so und so viel Leute, die jetzt 
zum Beispiel die Nudeln kochen 

658
00:34:16,880 --> 00:34:19,120
oder die und die Soße zubereiten
und so weiter ne. 

659
00:34:19,840 --> 00:34:21,960
Und zwar so, dass du dann im 
Endeffekt auch zum Beispiel 

660
00:34:21,960 --> 00:34:24,560
sowas wie Überlast Verhinderst, 
weil es bringt ja auch nichts, 

661
00:34:24,560 --> 00:34:28,600
wenn du keine Ahnung, sagen wir 
mal, du hast n Restaurant ne und

662
00:34:28,600 --> 00:34:31,199
willst jetzt für ne kleine 
Gruppe für ne Geburtstagsgruppe,

663
00:34:31,199 --> 00:34:34,400
die einfach sehr exquisit sagen,
wir wollen jetzt den ganzen 

664
00:34:34,400 --> 00:34:37,600
Laden mieten, weil wir sind 
jetzt hier 12 Leute und das soll

665
00:34:37,600 --> 00:34:40,760
jetzt wirklich, es ist der 90. 
Geburtstag und das ist richtig 

666
00:34:40,760 --> 00:34:43,199
super ne so keine Ahnung. 
Und dann gibt's jetzt aber ne 

667
00:34:43,199 --> 00:34:46,120
Großveranstaltung, ne. 
Ich meine, das liegt auf der 

668
00:34:46,120 --> 00:34:48,480
Hand, dass man da vielleicht ein
Paar mehr, ich nenne es jetzt 

669
00:34:48,480 --> 00:34:53,840
mal extra Instanzen braucht für,
sagen wir mal, 

670
00:34:53,840 --> 00:34:57,520
kochunterstützung. 
Ja genau, es ist ja, es ist. 

671
00:34:57,520 --> 00:35:00,160
Kann man sich wirklich ganz 
klassisch vorstellen, ne, also 

672
00:35:00,160 --> 00:35:06,480
der Küchenchef deren Aufgabe ist
es ja einfach zu sagen, wann 

673
00:35:06,480 --> 00:35:09,680
brauche ich denn mehr 
küchenhilfen oder mehr 

674
00:35:09,680 --> 00:35:12,440
Köchinnen, wie auch immer mehr 
Köche aber. 

675
00:35:12,440 --> 00:35:16,800
Einfach nur zum Beispiel anhand 
von Veranstaltungen oder von von

676
00:35:18,240 --> 00:35:21,520
Wochentagen abhängig. 
So ist es ja am Ende bei einer 

677
00:35:21,520 --> 00:35:24,800
normalen kleinen Server 
Anwendung zum Beispiel auch. 

678
00:35:24,800 --> 00:35:28,320
Ja wenn du sagst ey, weißt du, 
am Wochenende haben wir einfach 

679
00:35:28,320 --> 00:35:31,600
eine höhere Last als Montag, 
genauso ist es im Restaurant, am

680
00:35:31,600 --> 00:35:34,600
Wochenende kommen mehr die Lust 
haben Essen zu gehen als Montag,

681
00:35:34,600 --> 00:35:38,160
wobei vielen Ruhetag ist. 
Und genau das ist der Punkt ne 

682
00:35:38,160 --> 00:35:40,480
diese. 
Effiziente Verteilung von 

683
00:35:40,480 --> 00:35:42,800
bestellen, verhindern von 
Überlastung was du gerade 

684
00:35:42,800 --> 00:35:45,560
meintest und das kann man halt 
mit diesem Küchenbeispiel mit 

685
00:35:45,560 --> 00:35:48,480
dem Restaurantbeispiel einfach 
auch gut verdeutlichen. 

686
00:35:48,480 --> 00:35:50,720
Am Ende ja. 
Ja, ich mein, wenn du das ganze 

687
00:35:50,720 --> 00:35:53,760
jetzt noch mal ein bisschen auf,
auch auf auf was technischeres 

688
00:35:53,760 --> 00:35:58,200
münzt und ich hatte ja vorhin 
zum Beispiel E Commerce gesagt, 

689
00:35:58,200 --> 00:36:00,640
es gibt ja auch bei einem 
riesengroßen E Commerce 

690
00:36:00,640 --> 00:36:04,240
Anbieter, gibt es ja auch so 
Special Tage ne wo dann eben 

691
00:36:04,640 --> 00:36:08,640
besondere Angebote über den 
Tisch gehen. 

692
00:36:09,120 --> 00:36:13,760
Und da ist ja auch selbst bei 
bei denen selber. 

693
00:36:13,760 --> 00:36:17,040
Sozusagen ist es ja bekannt, 
dass einfach die Last, also dass

694
00:36:17,040 --> 00:36:20,480
einfach viel mehr Leute dann auf
die Seite gehen, auf der Seite 

695
00:36:21,120 --> 00:36:23,600
kaufen und so weiter und das ist
ja genau zum Beispiel, das kann 

696
00:36:23,600 --> 00:36:26,720
man sich gut vorstellen, weil du
hast beispielsweise als Service 

697
00:36:26,720 --> 00:36:30,480
hast du zum Beispiel als als als
Micro Service hast du zum 

698
00:36:30,480 --> 00:36:35,040
Beispiel die Website, wo du nach
den Produkten gucken kannst. 

699
00:36:35,320 --> 00:36:37,480
Wenn du es jetzt aber zur 
Bezahlung geht, hast du ein 

700
00:36:37,480 --> 00:36:39,920
Bezahlservice. 
Das heißt, du musst dann immer 

701
00:36:39,920 --> 00:36:42,880
gucken und wenn du es richtig 
stark machst, dann hast du ja 

702
00:36:42,880 --> 00:36:45,840
zum Beispiel in der Zeit, wo du 
auf einmal vielleicht sehr, sehr

703
00:36:45,840 --> 00:36:49,480
viele User auf deiner Seite 
hast, die Sachen in den 

704
00:36:49,480 --> 00:36:52,000
Warenkorb packen und so weiter 
aber noch nicht bezahlen, weil 

705
00:36:52,000 --> 00:36:53,920
sie sich denken, ich gucke 
erstmal noch mal. 

706
00:36:54,000 --> 00:36:55,680
Ich packe mir schon mal was 
rein, vielleicht packe ich 

707
00:36:55,680 --> 00:36:58,280
hinterher wieder was raus, dann 
hast du vielleicht erstmal zu 

708
00:36:58,280 --> 00:37:01,240
einem bestimmten Zeitpunkt am 
Tag hast du eine richtig eine 

709
00:37:01,240 --> 00:37:03,600
richtig große Last auf deiner 
Website beispielsweise 

710
00:37:03,600 --> 00:37:05,240
sozusagen, ich nenne es jetzt 
mal Produkte. 

711
00:37:05,320 --> 00:37:10,320
Produkte anschauen, so dieser 
Service ne und dann musst du in 

712
00:37:10,320 --> 00:37:13,080
der Stelle ne. 
Bei deiner Orchestrierung siehst

713
00:37:13,080 --> 00:37:16,600
du OK load balancing, ich muss 
quasi mehr Instanzen von meiner 

714
00:37:16,600 --> 00:37:19,760
Website hochfahren, damit 
genügend Leute auch flüssig sich

715
00:37:19,760 --> 00:37:22,240
diese Produkte angucken können. 
Wenn du jetzt aber an einem 

716
00:37:22,240 --> 00:37:25,280
anderen Tageszeitpunkt zum 
Beispiel ne keine Ahnung 

717
00:37:25,280 --> 00:37:28,000
Feierabend bei vielen Leuten die
denken sich so so und jetzt 

718
00:37:28,080 --> 00:37:30,360
kaufe ich mal ne Runde. 
Da musst du vielleicht den 

719
00:37:30,360 --> 00:37:33,160
Bezahlservice hochskalieren und 
mehr Instanzen von deinem 

720
00:37:33,160 --> 00:37:36,400
Bezahlservice machen, damit auch
wirklich nicht irgendwie eine, 

721
00:37:36,640 --> 00:37:39,480
sagen wir mal, eine Zahlung 
untergeht, weil es ist ja nichts

722
00:37:39,480 --> 00:37:41,440
schlimmer, als wenn du sagst, 
okay, jetzt möchte ich bezahlen,

723
00:37:42,080 --> 00:37:44,520
Herr lädt, was passiert hier 
gerade, habe ich jetzt bezahlt, 

724
00:37:44,520 --> 00:37:46,720
habe ich nicht bezahlt, kriege 
ich mein Produkt oder kriege ich

725
00:37:46,720 --> 00:37:49,720
es nicht so ne und damit so was 
halt eben nicht auftritt, kannst

726
00:37:49,720 --> 00:37:53,920
du dann halt genau durch deine 
Orchestrierung ne genau diese. 

727
00:37:54,360 --> 00:37:56,960
Verschiedenen zu verschiedenen 
Zeiten verschiedene 

728
00:37:56,960 --> 00:37:59,360
Microservices halt eben. 
Balancen beispielsweise. 

729
00:38:00,800 --> 00:38:06,640
Genau, ja, sehr gutes Beispiel. 
Ich mein ich, man kann das ja 

730
00:38:06,640 --> 00:38:09,160
auch, um noch mal diesen VM 
vergleich zu machen, ne also 

731
00:38:09,160 --> 00:38:14,320
wenn du jetzt zum Beispiel sagst
lass uns n ganz einfaches 

732
00:38:14,320 --> 00:38:17,520
Beispiel nehmen, also zum 
Beispiel E Commerce ja OK. 

733
00:38:18,520 --> 00:38:20,160
Gehen wir mal das. 
Also du hast sag ich mal n 

734
00:38:20,160 --> 00:38:22,480
Webserver irgendwo. 
Ja, also jetzt zum Beispiel NOJA

735
00:38:22,480 --> 00:38:26,360
SN ganz simplen Webserver E 
Commerce hast vielleicht jetzt 

736
00:38:26,360 --> 00:38:30,560
noch ja n Angular Frontend oder 
oder irgendwie was in Python 

737
00:38:30,560 --> 00:38:35,280
auch sehr beliebt und in dem 
Fall um das Skalieren zu können 

738
00:38:35,280 --> 00:38:37,560
mit der Orchestrierung wie du 
meintest wenn wir uns das jetzt 

739
00:38:37,560 --> 00:38:39,960
mal in der VM noch mal 
vorstellen, ne um das noch mal 

740
00:38:39,960 --> 00:38:46,000
klar zu herauszukristallisieren,
in der VM würde das ja bedeuten,

741
00:38:46,320 --> 00:38:48,640
dass. 
Beide Apps, ja, also der 

742
00:38:48,640 --> 00:38:52,760
Webserver als auch das Frontend 
ja in einer VM in einer großen 

743
00:38:52,760 --> 00:38:57,440
VM laufen müssen zwangsläufig 
und du ne superenge Kopplung 

744
00:38:57,440 --> 00:39:00,320
dadurch erzeugst. 
Ja, weil die immer voneinander 

745
00:39:00,320 --> 00:39:03,920
abhängig sind von ihren 
Umgebungen, auch das heißt du 

746
00:39:03,920 --> 00:39:06,720
kannst es nicht unabhängig 
skalieren, du kannst da nicht so

747
00:39:06,720 --> 00:39:08,480
was machen wie. 
Ja, warte mal. 

748
00:39:08,480 --> 00:39:09,800
Jetzt sind aber viele auf dem 
Shop. 

749
00:39:09,800 --> 00:39:11,560
Ja, also viele auf unserem 
Frontend unterwegs. 

750
00:39:11,560 --> 00:39:14,080
Wir brauchen jetzt mehr 
Instanzen, ja und dadurch hast 

751
00:39:14,080 --> 00:39:17,600
du halt diesen hohen Overhead 
oder einfach das Küchenbeispiel,

752
00:39:18,800 --> 00:39:24,160
ja der der der Workload geht 
hoch von keine Ahnung, Spaghetti

753
00:39:24,160 --> 00:39:26,480
Bolognese wird ganz ganz viel 
bestellt gerade, aber ich hab 

754
00:39:26,480 --> 00:39:28,880
jetzt noch ne Pizza da drin 
scheißegal schmeiß die Nudeln 

755
00:39:28,880 --> 00:39:30,640
drauf die du warm. 
Gemacht hast. 

756
00:39:31,200 --> 00:39:33,120
Das das funktioniert ja nicht am
Ende. 

757
00:39:33,600 --> 00:39:37,040
Deswegen hast du es da, Pizza. 
Genau, stimmt genau, dann musst 

758
00:39:37,040 --> 00:39:41,200
du einfach die Karte kurz und 
mit Containern kannst du das 

759
00:39:41,200 --> 00:39:43,440
halt machen, weil dann hast du 
halt um das Beispiel noch mal 

760
00:39:43,440 --> 00:39:46,040
von dir aufzugreifen, denn 
separates Image für zum Beispiel

761
00:39:46,040 --> 00:39:49,520
den No JS Server und für die 
Engula für das Frontend oder 

762
00:39:49,520 --> 00:39:52,640
Python, wie auch immer, so kann 
man sich ja aussuchen und du 

763
00:39:52,640 --> 00:39:55,160
kannst sie unabhängig 
voneinander deployen, du kannst 

764
00:39:55,160 --> 00:39:58,440
sie unabhängig voneinander 
skalieren und kubanet ist jetzt 

765
00:39:58,440 --> 00:40:01,400
als Beispiel für deine 
Orchestrierung, erkennt dann zum

766
00:40:01,400 --> 00:40:05,280
Beispiel die Last und kann dann 
in dem Fall Pods mehr Pods 

767
00:40:05,280 --> 00:40:07,760
starten für. 
Frontend beispielsweise und du 

768
00:40:07,760 --> 00:40:10,480
hast halt dieses automatische 
Management dann und das ist halt

769
00:40:10,640 --> 00:40:17,040
ne unfassbar geile Sache, die es
wert ist sich anzugucken und wo 

770
00:40:17,040 --> 00:40:19,920
halt unfassbar viel auch drauf 
basiert, einfach heutzutage, 

771
00:40:19,920 --> 00:40:22,240
damit es überhaupt so läuft wie 
wir es kennen. 

772
00:40:22,240 --> 00:40:25,360
Ja ja genau. 
Also wenn man das jetzt ganze 

773
00:40:25,440 --> 00:40:27,000
das Ganze noch mal 
zusammenfasst, wir haben es ja 

774
00:40:27,000 --> 00:40:30,400
jetzt auch relativ. 
Ausführlich beleuchtet das 

775
00:40:30,400 --> 00:40:32,280
Ganze. 
Genau machen wir einen Rapper 

776
00:40:32,280 --> 00:40:34,720
jetzt hier. 
Und wenn man sich jetzt mal 

777
00:40:34,720 --> 00:40:37,080
anguckt, okay, was sind 
eigentlich so denn am Ende die 

778
00:40:37,080 --> 00:40:41,280
Vorteile von containerisierung 
containerisation nenn es wie du 

779
00:40:41,280 --> 00:40:44,480
magst. 
Also einmal hast du einheitliche

780
00:40:44,480 --> 00:40:47,800
deployments, weil du halt eben 
immer die gleiche Konfiguration 

781
00:40:47,800 --> 00:40:49,520
für dein Image beispielsweise 
hast. 

782
00:40:49,520 --> 00:40:52,240
Für dein nennen wir es mal 
Docker Image. 

783
00:40:53,960 --> 00:40:55,920
Es ist auf jeden Fall 
plattformunabhängig. 

784
00:40:56,640 --> 00:40:59,440
Du hast ne riesengroße 
Ressourcenersparnis. 

785
00:40:59,840 --> 00:41:04,000
Der Start deiner Anwendung, 
deines Microservices, was auch 

786
00:41:04,000 --> 00:41:06,240
immer geht es sehr sehr schnell 
vonstatten. 

787
00:41:06,400 --> 00:41:10,240
Du hast ne oder kannst ne 
bessere Auslastung gewährleisten

788
00:41:10,240 --> 00:41:14,200
durch deine Orchestrierung und 
wie ich schon meinte, 

789
00:41:14,200 --> 00:41:17,360
Microservices unterstützt halt 
eben auch Microservices und 

790
00:41:17,360 --> 00:41:22,720
ermöglicht eigentlich auch ne 
effiziente sagen wir mal CICD 

791
00:41:22,960 --> 00:41:25,920
Pipeline im. 
Gerade im def Ops Kontext also 

792
00:41:25,920 --> 00:41:29,360
auch eine hohe Automatisierung, 
was natürlich auch im Def Ops 

793
00:41:29,360 --> 00:41:32,960
Bereich sehr wichtig ist, sollte
man sich quasi immer Fragen im 

794
00:41:32,960 --> 00:41:36,400
Def Ops Bereich, was kann ich 
automatisieren wenn ich das 

795
00:41:36,400 --> 00:41:40,040
schon mehrmals manuell gemacht 
habe oder wie kann ich es 

796
00:41:40,040 --> 00:41:44,760
automatisieren und ist halt 
einfach mal wenn man es so sieht

797
00:41:44,760 --> 00:41:48,160
eine Grundlage für diese ganzen 
Cloud native Architekturen. 

798
00:41:48,880 --> 00:41:52,720
Ich glaube ohne wird es 
schwierig. 

799
00:41:53,960 --> 00:41:56,160
Ja. 
Und es verhindert die Spaghetti 

800
00:41:56,160 --> 00:41:57,520
auf der Pizza, haben wir 
festgestellt. 

801
00:41:57,600 --> 00:42:05,520
Ja, aber manche mögen. 
Manche, manche wollen sowas ja, 

802
00:42:05,840 --> 00:42:08,400
ja, ich glaub dann haben wir das
Thema echt gut abgehakt. 

803
00:42:08,400 --> 00:42:10,480
Hat mir mega Spaß gemacht fab 
ich find das auch super 

804
00:42:10,480 --> 00:42:12,640
spannend, ich steh total auf das
Thema. 

805
00:42:14,000 --> 00:42:15,680
Sehr spannend, hat Spaß gemacht.
Vielen Dank dafür. 

806
00:42:15,840 --> 00:42:18,720
Danke dir auch Tino und dann 
würde ich sagen, kommen wir zum 

807
00:42:18,720 --> 00:42:22,240
Ende, wenn es noch Themenwünsche
gibt, wie zum Beispiel auch 

808
00:42:22,240 --> 00:42:24,800
Gegenüberstellungen, was wir 
schon meinten im Micro Services 

809
00:42:24,800 --> 00:42:30,320
gegen Monolithen, neue versus 
alte Infrastrukturen, dann 

810
00:42:30,320 --> 00:42:33,520
schreibt uns ganz gerne einfach 
über die Mail Instagram, 

811
00:42:33,520 --> 00:42:36,160
Discord, wie auch immer, die 
Links dazu gibt es auf jeden 

812
00:42:36,160 --> 00:42:39,080
Fall den Show Notes. 
Auch wenn ihr andere Themen 

813
00:42:39,080 --> 00:42:41,280
habt, die Euch irgendwie 
interessieren, immer raus damit.

814
00:42:41,600 --> 00:42:44,240
Wir können auf jeden Fall gerne 
ne Podcast folge drüber machen. 

815
00:42:45,760 --> 00:42:49,600
Ja und ansonsten wird es uns 
mega mega mega freuen wenn ihr n

816
00:42:49,600 --> 00:42:52,640
kleines Feedback, also ne 
Bewertung für den Podcast da 

817
00:42:52,640 --> 00:42:55,920
lässt und vielleicht auch 
einfach den Podcast empfiehlt 

818
00:42:56,640 --> 00:42:59,600
einfach 2 Freunden oder 
Freundinnen und denkt natürlich 

819
00:42:59,600 --> 00:43:02,640
daran um keine Folge zu 
verpassen, den Podcast natürlich

820
00:43:02,640 --> 00:43:06,720
auch zu abonnieren. 
Ansonsten bleibt mir nichts 

821
00:43:06,720 --> 00:43:09,520
anderes zu sagen als Tino. 
Ich werde mir jetzt erst mal was

822
00:43:09,600 --> 00:43:12,560
zu essen gönnen, ne schöne Pasta
Pizza. 

823
00:43:13,120 --> 00:43:19,400
Ne schöne Pasta Pizza. 
Also ich hoffe ihr habt jetzt. 

824
00:43:19,400 --> 00:43:20,960
Auch. 
Ordentlich Hunger und könnt was 

825
00:43:20,960 --> 00:43:23,840
essen und wir hören uns einfach 
nächste Woche wieder in der 

826
00:43:23,840 --> 00:43:25,400
neuen Folge deine Coding war 
das. 

827
00:43:25,600 --> 00:43:26,640
Gemeinsam besser.
