Ders 4.43: Docker soketi ve makine bağlamaları
Docker arka plan programıyla konuşabilen herkes, makinenin diskini bağlayan ayrıcalıklı bir kapsayıcı başlatabilir; bu yüzden /var/run/docker.sock erişimi root erişimidir. Soketi bir kapsayıcıya bağlamak bu gücü kapsayıcıya verir; / ya da /etc'yi bağlamak hiçbir API olmadan benzerini yapar. Laboratuvarda her kapsayıcının bağlama noktalarını listeliyor, soketi tutan bir pano ile makinenin tüm dosya sistemine sahip bir araç kapsayıcısı buluyor, gereksiz olanı kaldırıyor, gerekeni daraltıyor ve bir yükleniciyi docker grubundan çıkarıyorsun.
16 dk
Bu derste öğreneceklerin
- Docker soketi erişiminin neden root'a eşit olduğunu açıklamak
- Bağlama noktalarını docker inspect ile listelemek
- Tehlikeli bağlamaları tanımak (soket, /, /etc)
- Geniş bir bağlamayı dar ve salt okunur bir bağlamayla değiştirmek
- docker grubunu denetlemek
Temel terimler
- Docker soketi
- /var/run/docker.sock: root'un dockerd'sinin sunduğu Docker API'sinin Unix soketi.
- Bağlama (bind mount)
- Bir makine yolunun kapsayıcı içinde görünür yapılması (-v /kaynak:/hedef[:ro]).
- docker grubu
- Üyeleri soketi sudo olmadan kullanabilir.
- :ro
- Bağlama seçeneği: kapsayıcı içinde salt okunur.
- Soket vekili
- Docker API'sinin önünde yalnızca seçili çağrılara izin veren süzgeç.
← Kayan çekirdek ayarları: sysctl önceliği · Tüm dersler · Telefon, SMS ve QR oltalaması →