Docker: Rheinwerk Computing
Autor Bernd Öggl, Michael Kofleren Limba Engleză Paperback – 3 iun 2023
Autorii Bernd Öggl și Michael Kofler aduc în acest volum o vastă experiență practică în ecosistemul de dezvoltare software, Michael Kofler fiind deja cunoscut pentru ghidurile sale tehnice esențiale. Această lucrare completează portofoliul lor, făcând tranziția firească de la controlul versiunilor în Git și programarea asistată de inteligență artificială în AI-Assisted Coding, către pilonul central al infrastructurii moderne: containerizarea. Observăm că autorii nu se limitează la teorie, ci distilează experiența reală în principii acționabile, oferind cititorului un instrumentar complet pentru gestionarea aplicațiilor.
Ca și Sean P. Kane în Docker: Up & Running, autorii structurează informația într-un flux logic care pornește de la fundamente și ajunge la orchestrarea complexă. Găsim în această carte o progresie tehnică riguroasă: începem cu instalarea și configurarea pe diverse sisteme de operare, explorăm anatomia fișierelor Dockerfile și ajungem la utilizarea avansată a volumelor de date. Structura cărții, împărțită în secțiuni dedicate instalării, comenzilor de bază și integrării cu instrumente precum GitLab sau Grafana, indică o acoperire exhaustivă a mediului de producție.
Merită menționat că volumul pune un accent deosebit pe securitate prin capitolele dedicate Rootless Docker și managementului securității containerelor, aspecte critice în deployment-ul modern. Spre deosebire de alte ghiduri, această lucrare din seria Rheinwerk Computing oferă exerciții specifice pentru migrarea proiectelor existente, transformând conceptele abstracte în soluții tehnice imediate pentru servere, baze de date și aplicații web dezvoltate în Node.js sau Python.
Din seria Rheinwerk Computing
- 20%
Preț: 183.66 lei - 20%
Preț: 354.98 lei - 20%
Preț: 182.51 lei -
Preț: 293.87 lei - 20%
Preț: 490.07 lei - 20%
Preț: 650.06 lei - 20%
Preț: 193.64 lei - 20%
Preț: 386.57 lei - 20%
Preț: 291.73 lei - 11%
Preț: 589.57 lei - 20%
Preț: 369.81 lei - 20%
Preț: 370.95 lei -
Preț: 243.25 lei - 20%
Preț: 183.62 lei -
Preț: 432.15 lei -
Preț: 235.63 lei - 20%
Preț: 268.95 lei - 20%
Preț: 480.79 lei - 20%
Preț: 309.07 lei - 20%
Preț: 281.72 lei - 20%
Preț: 321.89 lei - 20%
Preț: 251.46 lei -
Preț: 164.15 lei - 20%
Preț: 445.00 lei - 20%
Preț: 367.34 lei - 20%
Preț: 434.27 lei - 20%
Preț: 170.75 lei -
Preț: 238.85 lei -
Preț: 244.99 lei -
Preț: 236.19 lei - 20%
Preț: 210.26 lei - 20%
Preț: 159.40 lei - 20%
Preț: 351.76 lei -
Preț: 465.29 lei - 20%
Preț: 190.51 lei - 20%
Preț: 197.58 lei - 20%
Preț: 188.44 lei - 20%
Preț: 357.22 lei -
Preț: 228.49 lei - 20%
Preț: 401.62 lei - 20%
Preț: 467.91 lei - 20%
Preț: 266.72 lei - 20%
Preț: 287.29 lei -
Preț: 316.05 lei -
Preț: 574.49 lei - 20%
Preț: 396.84 lei - 20%
Preț: 287.16 lei - 20%
Preț: 257.49 lei -
Preț: 100.29 lei - 20%
Preț: 197.65 lei
Preț: 262.09 lei
Preț vechi: 327.62 lei
-20%
Carte disponibilă
Livrare economică 05-19 septembrie
Livrare express 22-28 august pentru 108.35 lei
Specificații
ISBN-10: 1493223836
Pagini: 491
Dimensiuni: 178 x 253 x 29 mm
Greutate: 1.02 kg
Editura: Rheinwerk Verlag GmbH
Seria Rheinwerk Computing
De ce să citești această carte
Recomandăm această carte profesioniștilor IT care doresc să stăpânească Docker într-un mod structurat și aplicat. Veți câștiga competențe concrete în crearea de imagini personalizate, securizarea mediilor prin Rootless Docker și integrarea fluxurilor CI/CD. Este resursa ideală pentru a face trecerea de la virtualizarea clasică la o infrastructură modernă, scalabilă și eficientă, utilizând instrumente standard în industrie precum Kubernetes și GitLab.
Despre autor
Bernd Öggl și Michael Kofler sunt specialiști recunoscuți în domeniul tehnologiei informației, cu o experiență vastă în scrierea de documentație tehnică și ghiduri de programare. Michael Kofler este un autor prolific în spațiul tech, publicând lucrări de referință despre Linux, baze de date și securitate. Expertiza lor combinată în administrarea sistemelor și dezvoltarea software se reflectă în abordarea pragmatică a cărții, axată pe nevoile reale ale dezvoltatorilor și administratorilor de sistem care lucrează în ecosisteme open-source și cloud.
Descriere scurtă
1) Installation and configuration
2) Dockerfiles
3) Docker commands
4) Rootless Docker
5) Project migration
6) GitLab
7) Grafana
8) Kubernetes
9) Container security
10) Continuous integration and delivery (CI/CD)
11) Docker images: servers, databases, programming languages, and web applications
Cuprins
... Docker ... 21
... About This Book ... 22
... Brave New Docker World ... 23
PART I ... Introduction ... 25
1 ... Hello World ... 27
1.1 ... Docker Quick Install ... 27
1.2 ... Apache with PHP 8 ... 28
1.3 ... Node.js ... 31
1.4 ... Python ... 33
2 ... Installation ... 37
2.1 ... Docker Variants ... 37
2.2 ... Version Numbers ... 38
2.3 ... Installation on Windows ... 38
2.4 ... Installation on macOS ... 40
2.5 ... Installation on Linux ... 41
2.6 ... Rootless Docker ... 46
3 ... Basic Principles ... 51
3.1 ... Basic Principles and Terminology ... 51
3.2 ... Running Containers ... 56
3.3 ... Using Containers Interactively ... 58
3.4 ... Port Redirection ... 64
3.5 ... Data Storage in Volumes ... 67
3.6 ... Named Volumes ... 73
3.7 ... Volumes in Custom Directories ... 75
3.8 ... Communication between Containers ... 77
3.9 ... Administration of Docker ... 83
4 ... Custom Docker Images (Dockerfiles) ... 87
4.1 ... Dockerfiles ... 87
4.2 ... A Custom Web Server Image ... 95
4.3 ... Uploading Images to Docker Hub ... 97
4.4 ... Setting Up a Pandoc and LaTeX Environment as an Image ... 100
5 ... docker compose ... 105
5.1 ... docker-compose versus docker stack ... 105
5.2 ... Installing "docker-compose" ... 106
5.3 ... YAML Ain't Markup Language Syntax ... 107
5.4 ... Hello Compose! ... 109
5.5 ... The docker-compose.yml File ... 114
5.6 ... Passwords and Other Secrets ... 120
6 ... Tips, Tricks, and Internal Details ... 123
6.1 ... Visual Studio Code ... 123
6.2 ... Portainer ... 126
6.3 ... Pull Limit in Docker Hub ... 128
6.4 ... Using Different CPU Architectures ... 133
6.5 ... Starting Containers Automatically ... 137
6.6 ... A Look Behind the Scenes ... 142
7 ... docker Command Reference ... 153
7.1 ... docker attach ... 155
7.2 ... docker build ... 155
7.3 ... docker commit ... 155
7.4 ... docker compose * ... 156
7.5 ... docker-compose config ... 156
7.6 ... docker-compose down ... 156
7.7 ... docker-compose events ... 156
7.8 ... docker-compose kill ... 156
7.9 ... docker-compose logs ... 157
7.10 ... docker-compose pause and docker compose unpause ... 157
7.11 ... docker-compose ps ... 157
7.12 ... docker-compose rm ... 157
7.13 ... docker-compose run ... 157
7.14 ... docker-compose start, docker-compose stop, and docker compose restart ... 158
7.15 ... docker-compose top ... 158
7.16 ... docker-compose up ... 158
7.17 ... docker container * ... 159
7.18 ... docker create ... 159
7.19 ... docker diff ... 159
7.20 ... docker events ... 160
7.21 ... docker exec ... 160
7.22 ... docker export ... 160
7.23 ... docker image * ... 160
7.24 ... docker images ... 161
7.25 ... docker import ... 161
7.26 ... docker info ... 161
7.27 ... docker inspect ... 162
7.28 ... docker kill ... 163
7.29 ... docker login and docker logout ... 163
7.30 ... docker logs ... 163
7.31 ... docker network * ... 164
7.32 ... docker node * ... 165
7.33 ... "docker pause" and "docker unpause" ... 165
7.34 ... "docker port" ... 165
7.35 ... docker ps ... 166
7.36 ... docker pull ... 166
7.37 ... docker push ... 167
7.38 ... docker rename ... 167
7.39 ... docker restart ... 167
7.40 ... docker rm and docker rmi ... 167
7.41 ... docker run ... 168
7.42 ... docker secret * ... 169
7.43 ... docker service * ... 170
7.44 ... docker stack * ... 170
7.45 ... docker start and docker stop ... 171
7.46 ... docker stats ... 171
7.47 ... docker swarm * ... 172
7.48 ... docker system * ... 172
7.49 ... docker tag ... 173
7.50 ... docker top ... 173
7.51 ... docker update ... 173
7.52 ... docker volume * ... 174
7.53 ... docker wait ... 174
PART II ... Toolbox ... 175
8 ... Alpine Linux ... 177
8.1 ... Characteristics ... 177
8.2 ... Package Management with "apk" ... 181
9 ... Web Servers and Company ... 185
9.1 ... Apache HTTP Server ... 185
9.2 ... Nginx ... 191
9.3 ... Nginx as Reverse Proxy with SSL Certificates from Let's Encrypt ... 193
9.4 ... Node.js with Express ... 201
9.5 ... HAProxy ... 205
9.6 ... Traefik Proxy ... 207
10 ... Database Systems ... 213
10.1 ... MySQL and MariaDB ... 213
10.2 ... PostgreSQL ... 219
10.3 ... MongoDB ... 223
10.4 ... Redis ... 230
11 ... Programming Languages ... 233
11.1 ... JavaScript (Node.js) ... 233
11.2 ... Java ... 236
11.3 ... PHP: Hypertext Preprocessor ... 240
11.4 ... Ruby ... 247
11.5 ... Python ... 248
12 ... Web Applications and Content Management Systems ... 255
12.1 ... WordPress ... 255
12.2 ... Nextcloud ... 263
12.3 ... Joomla ... 266
PART III ... Exercises ... 269
13 ... A Modern Web Application ... 271
13.1 ... The Application ... 272
13.2 ... The Frontend: Vue.js ... 274
13.3 ... The API Server: Node.js Express ... 284
13.4 ... The Mongo Database ... 294
13.5 ... The Session Storage: Redis ... 298
14 ... Grafana ... 301
14.1 ... Grafana-Docker Setup ... 301
14.2 ... Provisioning ... 310
14.3 ... A Customized Telegraf Image ... 313
15 ... Modernizing a Traditional Application ... 319
15.1 ... The Existing Application ... 320
15.2 ... Planning and Preparation ... 322
15.3 ... The Development Environment ... 335
15.4 ... Production Environment and Migration ... 337
15.5 ... Updates ... 339
15.6 ... Tips for the Transition ... 340
15.7 ... Results ... 341
16 ... GitLab ... 343
16.1 ... GitLab Quick Start ... 344
16.2 ... GitLab Web Installation ... 346
16.3 ... HTTPS via a Reverse Proxy Setup ... 348
16.4 ... Email Dispatch ... 348
16.5 ... Secure Shell Access ... 352
16.6 ... Volumes and Backup ... 352
16.7 ... Custom Docker Registry for GitLab ... 355
16.8 ... The Complete docker-compose File ... 356
16.9 ... Using GitLab ... 358
16.10 ... GitLab Runner ... 362
16.11 ... Mattermost ... 369
17 ... Continuous Integration and Continuous Delivery ... 375
17.1 ... The dockerbuch.info Website with gohugo.io ... 376
17.2 ... Docker Images for the CI/CD Pipeline ... 380
17.3 ... The CI/CD Pipeline ... 384
18 ... Security ... 397
18.1 ... Software Installation ... 397
18.2 ... Origin of Docker Images ... 398
18.3 ... "root" in Docker Images ... 401
18.4 ... The Docker Daemon ... 403
18.5 ... User Namespaces ... 404
18.6 ... Control Groups ... 406
18.7 ... Secure Computing Mode ... 408
18.8 ... AppArmor Security Profiles ... 408
19 ... Swarm and Amazon Elastic Container Service ... 411
19.1 ... Swarm versus Kubernetes ... 411
19.2 ... Docker Swarm ... 412
19.3 ... Docker Swarm in the Hetzner Cloud ... 417
19.4 ... Amazon Elastic Container Service ... 428
20 ... Kubernetes ... 435
20.1 ... Minikube ... 436
20.2 ... Amazon Elastic Kubernetes Service ... 447
20.3 ... Microsoft Azure Kubernetes Service ... 452
20.4 ... Google Kubernetes Engine ... 461
... Appendices ... 471
A ... Podman as a Docker Alternative ... 471
B ... The Authors ... 483
... Index ... 485