Chroot vs Docker
Próbuję nauczyć się podstaw o kontenerach (w tym przypadku Docker). Z tego co wiem z Dockera doc i kilku odczytów, Docker zasadniczo zapewnia izolację poprzez uruchomienie kontenera przy użyciu runc (poprzednio używając LXC). Tak czy inaczej używa tego samego jądra co maszyna hosta. Dlatego obraz kontenera musi być zgodny z jądrem hosta. Uważam to za bardzo podobne do tego, co robi chroot. Czy ktoś mógłby mi wyjaśnić jakieś różnice i / lub zalety używania Dockera zamiast chroot? (poza dodatkami dostarczanymi przez Docker jako packaging, Docker-hub i wszystkimi przyjemnymi funkcjami dostarczanymi przez Docker) {]}
1 answers
Docker pozwala wyizolować proces na wielu poziomach poprzez przestrzenie nazw:
- mnt przestrzeń nazw zapewnia główny system plików (ten można porównać do chroot, jak sądzę)
- przestrzeń nazw pid więc proces widzi tylko siebie i swoje dzieci
- przestrzeń nazw sieci, która pozwala kontenerowi na posiadanie dedykowanego stosu sieciowego
- przestrzeń nazw użytkownika (całkiem nowa), która pozwala na mapowanie użytkownika nie root na hoście z użytkownikiem root w kontenerze
- uts zapewnia dedykowanÄ… nazwÄ™ hosta
- ipc zapewnia dedykowaną pamięć współdzieloną
Wszystko to dodaje więcej izolacji niż zapewnia chroot
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-06-13 10:42:13