
Kapsayıcılar, hizmetlerin ve uygulamaların yalıtılmış örneklerini dağıtmanın harika bir yoludur. Bu kapsayıcıya alınmış araçlarla, bunları bir sunucudan diğerine kolayca taşıyabilir, hızlı bir şekilde güncelleyebilir ve hatta büyük ölçeklenebilirlik için bir kümeye dağıtabilirsiniz. Bu makale, piyasadaki en popüler konteyner araçlarından biri olan Docker’ı yükleme ve ardından NGINX web sunucusunu dağıtma sürecinde size yol gösterir.
Kurulum
Docker’ın Ubuntu 18.04’e kurulumu inanılmaz derecede kolaydır. Bir terminal penceresi açın (veya SSH aracılığıyla Ubuntu sunucunuzda oturum açın).
-
Docker’ı kurmadan önce, sunucunuzu güncellemek ve yükseltmek en iyisidir. Ancak, yükseltme çekirdek içeriyorsa, değişikliklerin etkili olması için sunucuyu yeniden başlatmanız gerektiğini unutmayın. Bu nedenle, sunucunun yeniden başlatılmasının mümkün olduğu bir zamanda güncelleme / yükseltme komutlarını çalıştırın. Ubuntu Sunucusunu güncellemek ve yükseltmek için komutlar şunlardır: sudo apt-get update
sudo apt-get yükseltme -
Bu iki komut tamamlandığında (ve gerekirse yeniden başlattığınızda), aşağıdaki komutu vererek Docker’ı yükleyebilirsiniz: sudo apt-get install docker.io
-
Bu komut tamamlandıktan sonra Docker’ı şu komutlarla başlatın ve etkinleştirin: sudo systemctl start docker
sudo systemctl docker’ı etkinleştirBu, Docker’ı etkinleştirir, böylece sunucu yeniden başlatılırsa otomatik olarak başlar.
-
Ardından, kullanıcınızı docker grubuna ekleyin. Aksi takdirde, docker komutlarını sudo ayrıcalıklarıyla çalıştırmanız gerekir, bu da güvenlik sorunlarına yol açabilir. Bu tek bir komutla halledilebilir: sudo usermod -aG docker $ USER
Merak ediyorsanız, aşağıdaki komut yukarıdaki komutu açıklamaktadır:
- usermod bir kullanıcıyı değiştirmek için gerçek komuttur.
- a seçeneği, kullanıcı moduna kullanıcı eklediğinizi bildirir.
- G seçenekler, kullanıcı moduna kullanıcıyı bir gruba eklediğinizi bildirir.
- liman işçisi kullanıcıyı eklediğiniz gruptur.
- $ USER bash’a o anda oturum açmış olan kullanıcıyı kullanma talimatı verir.
-
Yukarıdaki komutu çalıştırdıktan sonra, değişikliklerin etkili olması için oturumu kapatın ve tekrar oturum açın. Artık Docker ile çalışmaya başlamaya hazırsınız.
DockerHub’dan Görüntüleri Çekme
DockerHub, kapsayıcılarınız için temel olarak kullanılabilecek görüntüleri barındıran merkezi bir depodur. DockerHub, bazıları çok özel (ve hatta özel amaçlara) hizmet eden binlerce görüntü içerir.
-
Amaç bir NGINX konteyneri dağıtmak olduğundan, resmi NGINX konteynerini aşağı çekin. Bunu yapmadan önce şu komutu verin: docker images
Bu komutun çıktısı, bulunacak hiçbir geçerli görüntüyü göstermemelidir.
-
NGINX görüntüsünü şu komutla aşağı çekin: docker pull nginx
-
Yukarıdaki komut görüntüyü aşağı çeker. Komutu verirseniz docker görüntüleri, yeni çekilmiş görüntünün listelendiğini göreceksiniz.
NGINX Container’ı Dağıtma
Artık kabı temel alacağınız bir görüntünüz olduğuna göre, NGINX’in kapsayıcıya alınmış örneğini ağınıza dağıtın. NGINX’i bir kap olarak kullanarak, hangi bağlantı noktasında konuşlandırılacağını kontrol edebilirsiniz.
-
NGINX’i standart bağlantı noktası 80’e konuşlandırın. Bunu gerçekleştirmek için komut şuna benzer: docker run –name docker-nginx -p 80:80 nginx
Yukarıdaki komutun küçük bir açıklaması:
- liman işçisi gerçek komut
- Çalıştırmak komuta, aşağıdaki komutun komutla çalıştırılacağını bildirir.
- –name kapsayıcıya insan tarafından okunabilir bir ad verir.
- -p Docker’a hangi bağlantı noktalarının kullanılacağını bildirir.
- 80:80 – İlk 80 harici bağlantı noktasıdır (ağınızda kullanıldığı şekliyle) ve ikinci 80 dahili bağlantı noktasıdır (Docker tarafından kullanıldığı şekliyle).
- nginx kap için kullanılacak görüntüdür.
-
Bu kapsayıcıyı dağıttıktan sonra, bir tarayıcıyı http: // SERVER_IP (burada Sunucu IP’si, Docker’ı barındıran sunucunun IP adresidir) ve NGINX karşılama sayfasına bakın.
-
Ayrıca komut isteminizi geri almadığınızı da fark edeceksiniz. Neden? Komutu ekli modda çalıştırdınız. Eğer vurursan Ctrl+c tuş kombinasyonu, konteyner öldürülür ve istemi geri alırsınız.
-
Konteyneri çalışır durumda tutmak ve isteminizi geri almak istiyorsanız, konteyneri ayrı modda dağıtmanız gerekir, örneğin: docker run –name docker-nginx -p 80:80 -d nginx
-
Ancak, ilk kapsayıcıyı zaten dağıttığınız için bir hata göreceksiniz. Bundan kaçınmak için, ilk konteyneri docker stop komut. Bunu yapmak için, uzun bir rastgele karakterler dizisi olan kap adını (hatada yazdırılacaktır) not almanız gerekir. Bu komutu çalıştırmak için, kabın yalnızca ilk dört karakterini kullanmanız gerekir, örneğin: docker stop f149
-
Daha sonra, konteyneri şu komutla kaldırırsınız: docker rm f149
Orijinal kap artık durdurulmuş ve kaldırılmıştır. Daha sonra NGINX kapsayıcısını ayrılmış modda başarıyla yeniden konuşlandırabilirsiniz.