Yeni Başlayanlar İçin Docker Eğitimi: Temel Bilgiler, Archidoku, Konteynerler
⚡ Akıllı Özet
Docker, uygulamaları ve bağımlılıklarını taşınabilir, hafif konteynerler halinde paketleyen bir konteynerleştirme platformudur. Bu genel bakış, Docker mimarisini ve kurulumunu açıklamaktadır. UbuntuTemel komutlar ve konteynerlerin geleneksel sanal makinelerden nasıl farklılaştığı, yazılım dağıtımını nasıl hızlandırdığı konularını ele almaktadır.

Docker, modern çağda kullanılan en popüler konteynerleştirme platformlarından biridir. DevOps ve bulut iş akışları. Yeni başlayanlar için hazırlanan bu Docker eğitiminde Docker'ın ne olduğu, Docker mimarisinin nasıl çalıştığı ve Docker'ın nasıl kurulacağı açıklanmaktadır. Ubuntuve görüntüleri ve konteynerleri yönetmek için kullanılan temel komutlar.
Docker nedir?
liman işçisi Docker, aynı sunucuda birden fazla işletim sisteminin çalışmasına olanak tanıyan bir sanallaştırma yazılım geliştirme platformudur. Altyapıyı uygulamalardan ayırmanıza ve böylece yazılımı hızlı bir şekilde teslim etmenize yardımcı olur. Sanal makineler (VM'ler) oluşturmak için kullanılan hipervizörlerin aksine, Docker sanallaştırmayı Docker konteynerleri adı verilen birimler kullanarak sistem düzeyinde gerçekleştirir.
Aşağıdaki resimde gösterildiği gibi, Docker konteynerleri ana işletim sisteminin üzerinde çalışır. Bu, hem verimliliği hem de güvenliği artırır. Ayrıca, konteynerler daha az kaynak kullandığı için aynı altyapıda sanal makinelerden daha fazla konteyner çalıştırabilirsiniz.

Ana bilgisayar donanımıyla doğrudan iletişim kurabilen (örneğin, daha fazla sanal adaptör oluşturan bir Ethernet adaptörü) sanal makinelerin aksine, Docker konteynerleri ana işletim sisteminin üzerinde izole bir ortamda çalışır. Ana bilgisayarınızda işletim sistemi yüklü olsa bile... Windows, koşabilirsin Linux konteynerlerin içindeki resimleri yardımıyla Hyper-VBu işlem, temel imajı sanallaştırmak için otomatik olarak küçük bir sanal makine oluşturur.
Artık Docker'ın ne olduğunu bildiğinize göre, ekiplerin onu seçmesinin başlıca nedenlerine bakalım.
Neden Docker'ı kullanmalısınız?
İşte Docker kullanmanın başlıca nedenleri:
- Docker, birden fazla sanallaştırma işlemine olanak sağlayan sanallaştırma yazılımıdır. işletim sistemleri Aynı sunucuda çalıştırılmak üzere.
- Docker, istemcilerin sunucuyla iletişim kurduğu bir istemci-sunucu uygulamasıdır.
- Docker imajları, konteynerler için "kaynak kod" görevi görür; bunları derlemek için kullanırsınız.
- Docker iki tür kayıt defterini destekler: genel ve özel.
- Konteynerler, Docker'ın organizasyonel birimleridir. Basitçe söylemek gerekirse, bir imaj bir şablondur ve bir konteyner bu şablonun bir kopyasıdır; bu nedenle aynı imajdan birden fazla konteyner çalıştırabilirsiniz.
Bu avantajlar, Docker'ın tasarım şeklinden kaynaklanmaktadır. Aşağıdaki bölümde Docker mimarisi ve temel bileşenleri ayrıntılı olarak açıklanmaktadır.
liman işçisi Archidoku
Şimdi, bu Docker konteyner eğitiminde, Docker mimarisinin ana bileşenlerine göz atalım.
liman işçisi motoru
Docker, istemci-sunucu tabanlı bir uygulamadır; yani istemciler istekleri bir sunucuya iletir. Docker daemon'ı olan dockerd, sunucuyu temsil eden Docker motorudur. Daemon ve istemciler aynı veya uzak bir sunucuda çalışabilir ve komut satırı istemci ikili dosyası ve tam bir sunucu aracılığıyla iletişim kurarlar. RESTful API dockerd ile etkileşim kuran.
Docker Görselleri
Docker imajları, konteynerlerimizin "kaynak kodu"dur; konteyner oluşturmak için bunları kullanırız. İmajlar önceden yüklenmiş yazılımlar içerebilir, bu da dağıtımı hızlandırır. Taşınabilirdirler ve mevcut imajları kullanabilir veya kendi imajlarınızı oluşturabilirsiniz.
Docker Kayıtları
Docker, oluşturduğumuz imajları kayıt defterlerinde saklar. Genel ve özel kayıt defterleri vardır. Docker'ın genel bir kayıt defteri vardır. Docker Hub'ıAyrıca, görsellerinizi özel olarak saklayabileceğiniz bir yer olan Docker Hub'da, hemen kullanmaya başlayabileceğiniz milyonlarca görsel bulunmaktadır.
Docker Konteynerleri
Konteynerler, Docker'ın organizasyonel birimleri ve temel kavramlarından biridir. Bir imaj oluşturup çalıştırdığımızda, onu bir konteyner içinde çalıştırıyoruz. Konteyner benzetmesi, içinde çalışan yazılımın taşınabilirliğinden dolayı kullanılır: Tıpkı kargo gemilerinin gerçek konteynerleri taşıması gibi, onu da taşıyabilir, "gönderebilir", değiştirebilir, yönetebilir, oluşturabilir veya yok edebilirsiniz.
Basit bir ifadeyle, görüntü bir şablondur ve kapsayıcı da bu şablonun bir kopyasıdır. Aynı görüntünün birden fazla kapsayıcısına (kopyasına) sahip olabilirsiniz.
Bu farklı bileşenler arasındaki etkileşim, Docker konteyner teknolojisinin nasıl birlikte çalıştığını gösterir. Daha sonra ele alacağımız `docker pull` ve `docker run` gibi komutlar, bu iş akışını yönetmenizi sağlar.
Mimariyi göz önünde bulundurarak, bu bileşenleri kendiniz deneyebilmeniz için Docker'ı kuralım.
Linux'ta Docker nasıl kurulur/Ubuntu
Aşağıda Linux üzerinde Docker kurulumunun adım adım açıklaması yer almaktadır.Ubuntu:
) 1 Adım Docker'ı kurmak için Docker ekibinin DEB paketlerine ihtiyacınız var. Öncelikle bazı ön koşullar mevcut. Ubuntu Paketler gereklidir. Bunları yüklemek için aşağıdaki komutu kullanın.
$ sudo apt-get install \ apt-transport-https \ ca-certificates curl \ software-properties-common
*“\” işaretine gerek yoktur, yeni satır için kullanılır, isterseniz komutu “\” kullanmadan tek satırda yazabilirsiniz.
) 2 Adım Resmi Docker GPG anahtarını parmak iziyle birlikte ekleyin. GPG anahtarını girmek için aşağıdaki Docker komutunu kullanın.
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
) 3 Adım Ardından, aşağıdaki komutu kullanarak Docker APT deposunu ekleyin.
$ sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable"
Depoyu eklemek ve GPG anahtarının otomatik olarak sunucunuza eklenmesini istediğinizi onaylamanız istenebilir. `lsb_release` komutu, bilgileri doldurmalıdır. Ubuntu ana makinenizin dağıtım sürümü.
) 4 Adım GPG anahtarını ekledikten sonra, aşağıdaki Docker komutunu kullanarak APT kaynaklarını güncelleyin.
$ sudo apt-get update
Artık Docker paketini kendiniz kurabilirsiniz.
) 5 Adım APT kaynakları güncellendikten sonra, Docker paketlerini kurmaya başlayın. Ubuntu Aşağıdaki Docker komutunu kullanarak.
$ sudo apt-get install docker-ce
Yukarıdaki komut Docker'ı ve diğer gerekli paketleri kurar. Docker 1.8.0 öncesinde paket adı lxc-docker iken, Docker 1.8 ile 1.13 arasında paket adı docker-engine idi.
NOT: Docker için Windows gerektirir Windows 10 Pro veya Enterprise sürüm 14393 veya Windows Server 2016 RTM sürümünü çalıştırmak için.
Temel Docker Komutlarını kullanarak Docker nasıl kullanılır?
İşte birkaç temel Docker komutuyla Docker'ı nasıl kullanacağınız.
Daha önce de belirtildiği gibi, Docker'ı kurduktan sonra çalıştırmanız gereken en temel komut `docker info` komutudur.
$ sudo docker info
Aşağıdakine benzer bir sonuç almalısınız.
Yukarıdaki Docker örneğinde gösterildiği gibi, Docker konteynerleri hakkında bilgi görebiliyoruz: kaç tanesi çalışıyor, duraklatılmış veya durdurulmuş durumda ve kaç imaj indirilmiş. Şimdi ilk imajımızı alalım.
$ sudo docker pull alpine
Bu komutla, Docker'a alpine imajını indirmesini ve varsayılan olarak ayarlanmış olan en son sürümünü genel kayıt defterinden çekmesini söylüyoruz.
*alpine, Alpine Linux tabanlı, tam paket indeksine sahip ve yalnızca 5 MB boyutunda minimal bir Docker görüntüsüdür.
Görüntüyü bir konteyner olarak çalıştırmak istiyorsak, aşağıdaki komutu kullanırız.
$ sudo docker run -i -t alpine /bin/bash
Komutu çalıştırmak bizi doğrudan Alpine terminaline gönderir. -i bayrağı, konteynere bağlı olmasanız bile konteynerden gelen STDIN'i açık tutar; bu kalıcı standart giriş, etkileşimli bir kabuk için ihtiyacınız olanın yarısıdır. -t bayrağı diğer yarısıdır ve Docker'a konteynere bir pseudo-tty atamasını söyler. Birlikte, yeni konteynerde etkileşimli bir kabuk elde etmemizi sağlarlar. Konteynerden basit bir exit komutuyla çıkıyoruz.
Şimdi, bu Docker temel bilgiler eğitiminde, bir şeyi çalıştırmayı deneyebiliriz. Ubuntu görüntü.
$ sudo docker run -it ubuntu /bin/bash
Dikkat edin, Docker imajı yerel olarak kontrol ediyor ve eğer orada yoksa, imaj otomatik olarak imaj kütüphanesinden çekiliyor. Bir kez daha, etkileşimli bir kabuk çalıştırıyoruz. Ayrıca konteynerleri çalıştırırken onlara isim de verebiliyoruz.
$ sudo docker run –-name our_container -it ubuntu /bin/bash
Ardından tekrar çıkıyoruz. Ayrıca, daha önce oluşturduğumuz bir konteyneri etkileşimli bir kabuk olmadan da çalıştırabiliriz.
$ sudo docker start container_name
Ve `docker stop container_name` komutunu yazarak konteyneri durduruyoruz.
$ sudo docker stop container_name
Çalışmakta olan tüm konteynerleri görmek istiyorsak, aşağıdaki komutu çalıştırmamız yeterli.
$ docker ps
Tüm konteynerler için, aynı komutun sonuna "-a" ekliyoruz, örneğin `docker ps -a`. Bu komut, konteyner kimliğini, kullandığı imajı, oluşturulma tarihini, çalışma durumunu, açıkta kalan portları ve daha kolay yönetim için rastgele oluşturulmuş bir adı gösterir.
Konteynerleri çalıştırdığımızda, ne kadar kaynak kullandıklarını genellikle bilmek isteriz. Bunun için aşağıdaki komutu kullanabiliriz.
$ docker stats
Ayrıca, yerel olarak indirdiğiniz görselleri ve bunlar hakkındaki bilgileri de görebilirsiniz.
$ sudo docker images
Yukarıdaki Docker örneğindeki komut, her Docker görüntüsünü, görüntü sürümünü, ayırt edici bir görüntü kimliğini, oluşturulma tarihini ve görüntü boyutunu gösteren bir etiketle birlikte görüntüler.
Konteynerlerin neden bu kadar büyük bir gelişme olduğunu anlamak için sanallaştırmanın nasıl evrimleştiğine bakmak faydalı olacaktır.
Sanallaştırma Nedir?
Eskiden bir hizmeti devreye almak yavaş ve zahmetliydi. Geliştiriciler kod yazardı ve ardından operasyon ekibi bunu donanıma doğrudan yüklenmiş makinelere dağıtırdı; burada kodun çalışması için kütüphane sürümlerine, yamalara ve dil derleyicilerine dikkat etmeleri gerekirdi. Hatalar veya sorunlar varsa, süreç baştan başlardı: geliştiriciler sorunu düzeltir ve operasyon ekibi yeniden dağıtım yapardı.
Hipervizörlerin ortaya çıkmasıyla işler iyileşti. Hipervizörler birden fazla işlemi çalıştırır. Sanal makinelerAynı sunucuda, çalışır durumda veya kapalı olabilen sanal makineler (VM'ler) de kullanılabilir. Sanal makineler, kod dağıtımı ve hata düzeltme için bekleme süresini büyük ölçüde azalttı, ancak asıl çığır açan şey Docker konteynerleri oldu.
Docker'ın popülaritesi, konteynerleri büyük ölçekte yöneten orkestrasyon araçlarından da kaynaklanmaktadır; örneğin, KubernetesDevam etmeden önce, en önemli Docker komutlarının kısa bir özetini sunalım.
Önemli Docker Komutları
Aşağıda önemli Docker komutları verilmiştir:
| Komuta | Açıklama |
|---|---|
| docker bilgisi | Bilgi Komutanlığı |
| liman işçisi çekme | Bir resim indirin |
| liman işçisi çalıştır -i -t resim_adı /bin/bash | Görüntüyü kapsayıcı olarak çalıştır |
| liman işçisi our_container'ı başlat | Kapsayıcıyı başlat |
| liman işçisi durağı konteyner_adı | Konteyneri durdur |
| docker ps | Çalışmakta olan tüm konteynerlerin listesi |
| liman işçisi istatistikleri | Konteyner bilgileri |
| docker görüntüleri | İndirilen görsellerin listesi |
| Docker Temizleme | Çalışan tüm konteynerleri öldürün. |
Ayrıca, bunları okuyun Docker iş görüşmesi soruları ve cevapları Hem yeni mezunlar hem de deneyimli profesyoneller için.

