Summary
Samenvatting Computersystemen 2 - Docker Theorie
Course
Computersystemen 2 (CS2)
Theorie van het docker onderdeel van computersystemen 2 van periode 2.
[Show more]
Preview 4 out of 39 pages
Uploaded on
January 17, 2023
Number of pages
39
Written in
2022/2023
Type
Summary
docker
computersystemen
cs2
toegepasteinformatica
informatica
computersystemen2
cs
kdg
Institution
Karel de Grote-Hogeschool (KdG)
Education
Toegepaste Informatica
Course
Computersystemen 2 (CS2)
All documents for this subject (5)
$3.63
Also available in package deal from $17.14
100% satisfaction guarantee
Immediately available after payment
Both online and in PDF
No strings attached
Also available in package deal (1)
Computersystemen 2 - theorie, docker theorie, docker labo's
1. Summary - Computersystemen 2 - theorie
2. Summary - Computersystemen 2 - docker theorie
3. Class notes - Computersystemen 2 - docker labo's
Show more
COMPUTERSYSTE
MEN- DOCKER
P3
KDG | 2022_23
,Inhoudsopgave
1. Introduction ................................................................................................................................................ 3
1.1 What is Docker? ............................................................................................................................................ 3
1.2 Terminology .................................................................................................................................................. 4
1.3 Docker architecture ...................................................................................................................................... 5
2. Installing ..................................................................................................................................................... 6
3. First Images & Containers ........................................................................................................................... 7
3.1 Image vs Container ....................................................................................................................................... 7
3.2 Docker images .............................................................................................................................................. 8
3.3 Docker Containers......................................................................................................................................... 9
3.4 Registry & repository .................................................................................................................................... 9
3.5 Running a Container ................................................................................................................................... 11
4. DockerFile ................................................................................................................................................. 11
4.1 What? ......................................................................................................................................................... 11
4.2 Simple example ........................................................................................................................................... 12
4.3 Building & running ...................................................................................................................................... 12
4.4 Commands .................................................................................................................................................. 12
4.4.1 From .................................................................................................................................................... 13
4.4.2 Maintainer (deprecated)..................................................................................................................... 13
4.4.3 Label .................................................................................................................................................... 13
4.4.4 Run ...................................................................................................................................................... 14
4.4.5 CMD .................................................................................................................................................... 14
4.4.6 Entrypoint ........................................................................................................................................... 15
4.4.7 Run vs CDM vs entrypoint................................................................................................................... 15
4.4.8 Copy .................................................................................................................................................... 15
4.4.9 Add ...................................................................................................................................................... 16
4.4.10 Env .................................................................................................................................................... 16
4.4.11 Volume .............................................................................................................................................. 16
4.4.12 Expose ............................................................................................................................................... 17
4.4.13 Workdir ............................................................................................................................................. 17
4.4.14 User ................................................................................................................................................... 17
4.4.15 Onbuild ............................................................................................................................................. 18
4.4.16 Optimize............................................................................................................................................ 18
4.4.17 Cache ................................................................................................................................................ 19
5. Publishing ................................................................................................................................................. 19
5.1 Overview ..................................................................................................................................................... 20
5.2 Publishing ................................................................................................................................................... 20
1
, 5.3 Automated builds ....................................................................................................................................... 21
6. Volumes .................................................................................................................................................... 22
6.1 Data & persistence...................................................................................................................................... 22
6.2 Volumes ...................................................................................................................................................... 23
6.3 Share with Host (Bind Mount) .................................................................................................................... 24
6.4 Data Volume Container .............................................................................................................................. 25
6.5 Pitfalls ......................................................................................................................................................... 25
6.6 Mount ......................................................................................................................................................... 26
6.7 Dockerfile .................................................................................................................................................... 26
7. Networking ............................................................................................................................................... 26
7.1 IP ................................................................................................................................................................. 27
7.2 Ports............................................................................................................................................................ 29
7.3 Ports & Dockerfile ....................................................................................................................................... 30
8. Orchestration ............................................................................................................................................ 31
8.1 Linking containers ....................................................................................................................................... 31
8.2 Orchestration .............................................................................................................................................. 32
8.3 Docker compose.......................................................................................................................................... 33
9. Swarm ...................................................................................................................................................... 36
9.1 Werking ...................................................................................................................................................... 36
9.2 Swarm met virtuele systemen..................................................................................................................... 36
9.3 Swarm met Docker in Docker in vm ............................................................................................................ 37
9.4 Swarm met Docker in Docker native ........................................................................................................... 37
9.5 Netwerk bij Swarm ..................................................................................................................................... 37
9.6 Services ....................................................................................................................................................... 37
9.7 Stack ........................................................................................................................................................... 38
2
, 1. Introduction
1.1 What is Docker?
Not virtualization but containerization
• Container Engine
- LXC, FreeBSD jail, OpenVZ, AIX WPARs, Solaris Containers, …
• Open source
• Written in GO
• “Software bucket” containing everything to run software independently.
- Process runs isolated on the OS of the host
• Process runs on host OS. (Shared OS Kernel)
• Process runs isolated
- Uses features of Linux kernel for isolation:
-Namespaces
-Control groups
- Can share OS parts between containers
• Uses a Union file system
3