Docker nedir? ve NARWEB’den aldığım sunucuma nasıl kurabilirim?

Narweb Docker Hosting

Günümüzde Docker container altyapısı bir çok uygulamanın arkasında uygulamanın çalıştırılması tarafında kullanılmaktadır. Burada container yapısı bir çok sorunu ortadan kaldırmakta, bunlardan en büyüğü; “Benim bilgisayarımda çalışıyor!”

Peki Docker bu sorunu nasıl ortadan kaldırıyor?

Uygulamanızı oluşturduğunuzda, uygulamanız için bir de çalışacağı ortamı belirlediğiniz Dockerfile oluşturuyorsunuz. Bu dosya ile uygulamanızın tam olarak istediği platformu oluşturabiliyor ve bu oluşturduğunuz yapıyı uygulmanız ile birlikte paketleyebiliyorsunuz. Bu şekilde elinizde bir Docker image ınız olmuş oluyor. Artık bu image ı alarak herhangi bir platformda sorun yaşamadan çalıştırabiliyorsunuz.

Kendi uygulamarınız için container imagelar oluşturabileceğiniz gibi birçok uygulamanında hazır docker imagelarını https://hub.docker.com/ adresinde aratarak bulabilirsiniz.(WordPress, MySQL, MongoDB, Redis vb.)

Kendi yazdığınız ya da internet üzerinden bulmuş olduğunuz Docker container image ını çalıştırmak istiyorsunuz fakat Narweb’den satın aldığınız VPS, VDS ya da Dedicated sunucunuza Docker servisini nasıl kuracağınızı bilmiyorsanız yazının bundan sonrakı kısmı tam size göre.

Ubuntu 18.04 sunucu üzerine Docker (CE) Community Edition kurulumu

İlk olarak Narweb üzerinden VPS, VDS ya da dedicated sunucu sipariş vererek işleme başlayabilirsiniz. Satın alma işlemi esnasında sunucunuz için kurulmasını istediğiniz işletim sistemi olarak Ubuntu 18.04 seçmeniz gerekmektedir. Şu anda güncel ve LTS(Long Time Support) yani uzun süre destek alan bir sürüm olmasından dolayı, burada Ubuntu 18.04 seçtik. Aynı kurulum adımları şu Ubuntu sürümleri ile uyumludur;

  • Disco 19.04
  • Cosmic 18.10
  • Bionic 18.04 (LTS)
  • Xenial 16.04 (LTS)

İlk olarak sunucunuzda olabilecek eski docker paketlerini herhangi bir çakışma olmaması için kaldırıyoruz.

sudo apt-get remove docker docker-engine docker.io containerd runc

Şimdi Ubuntu üzerindeki repolarımızı güncelleyelim

sudo apt-get update

APT yi HTTPS üzerinden kullanmak için gerekli paketleri kuruyoruz

sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common

Official GPG keyini sunucumuza ekliyoruz.

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

Şimdi official repository sini sunucumuza ekliyoruz

sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

Yeni eklediğimiz repository den sonra apt update yaparak sunucu repolarımızı güncelliyoruz

sudo apt-get update

Artık kurulumu yapabiliriz

sudo apt-get install docker-ce docker-ce-cli containerd.io

Bu default olarak en son sürümü kuracaktır fakat sizin özel bir docker sürümüne ihtiyacınız varsa aşağıdaki adımları uygulayabilirsiniz.

Önce kurmak istediğiniz sürümü repository üzerinde aratın

apt-cache madison docker-ce

Burada şöyle bir liste görünecektir

docker-ce | 5:18.09.1~3-0~ubuntu-xenial | https://download.docker.com/linux/ubuntu  xenial/stable amd64 Packages
  docker-ce | 5:18.09.0~3-0~ubuntu-xenial | https://download.docker.com/linux/ubuntu  xenial/stable amd64 Packages
  docker-ce | 18.06.1~ce~3-0~ubuntu       | https://download.docker.com/linux/ubuntu  xenial/stable amd64 Packages
  docker-ce | 18.06.0~ce~3-0~ubuntu       | https://download.docker.com/linux/ubuntu  xenial/stable amd64 Packages
  ...

Mesela burada 18.06.0~ce~3-0~ubuntu sürümünü kurmak istediğimizi düşünelim bu durumda kurulum için aşağıdaki komutu calıştırabilirsiniz

sudo apt-get install docker-ce=18.06.0~ce~3-0~ubuntu docker-ce-cli=18.06.0~ce~3-0~ubuntu containerd.io

Eğer komutları root olarak çalıştırıyorsanız sudo ön eklerini kaldırabilirsiniz.

Kurulumu test edelim

Şimdi son olarak kurulumunuzu test etmek için aşağıdaki komutu çalıştırabilirsiniz.

docker run narweb/narweb-ascii narweb.net

Örnek basit bir Dockerfile için aşağıdaki Github reposuna bakabilirsiniz.

https://github.com/narweb/narweb-ascii

NARWEB Virtual Private Server (VPS) sunucu planları

NARWEB Virtual Dedicated Server (VDS) sunucu planları

NARWEB Dedicated Server planları