01.06.2023

Docker nedir?

Docker, resmi olarak 2013 yılında piyasaya sürülen bir araç, bir konteyner yönetim sistemidir. Sistem, ölçeklendirme, yükseltme ve başka bir sunucuya geçiş yaparken son derece kullanışlıdır.

Serverspace, önceden yüklenmiş "Docker" uygulaması ile bir sunucu oluşturabilirsiniz.

Docker Go programlama dilini kullanmaktadır. Başlangıçta araç yalnızca Linux donanımında kullanılabilse de, artık Windows ve macOS cihazlarıyla da uyumludur.

Proje artık niş değil. Nispeten kısa bir süre içinde çok çeşitli profesyoneller arasında popüler hale geldi. Halihazırda birçok çözüm için kullanılıyor ve Docker'ın gelecekte daha da popülerlik kazanması bekleniyor. Bunun ana nedenlerinden biri, önceden oluşturulmuş, serbestçe erişilebilen konteyner görüntülerinden oluşan bir depo olan Docker Hub'dır. Depoya yalnızca serbest çalışanlar değil, programlama konusunda tutkulu olan meraklılar da projelerini yerleştiriyor. Resmi geliştiriciler de düzinelerce önceden oluşturulmuş uygulamayı kamuya açık alanda bırakıyor. Örneğin, artık Jenkins, Redmine, GitLab, MySQL, Apache, Elasticsearch ve diğer birçok çözümü depoda bulabilirsiniz.

Docker ile nasıl çalışılır

Sistem basit ve kullanımı kolaydır. Örnek olarak, WordPress'i sıfırdan başlatmayı deneyelim. Docker ile bu site yönetim sistemine başlamak için tek yapmanız gereken komutları çalıştırmaktır:

docker run --name wp-mysql -e MYSQL_ROOT_PASSWORD=wpmsqlpsswd -d mysql:5.7
docker run --name my-wordpress --link wp-mysql:mysql -d -p 80:80 wordpress

Bundan sonra, http://localhost adresinde localhost yerine sunucunuzun harici IP adresini belirttiğiniz bir web tarayıcı sayfası açın ve WordPress'i yapılandırmaya devam edin.

Docker Yapısı

Ekosistemle çalışırken kullanıcılar bu üç temel terimle karşılaşır:

Docker kullanmanın faydaları

Kolaylık Docker kullanıcılarının sevdiği bir şeydir. Docker kullanarak ek yazılım yüklemek veya hazır bir uygulama oluşturmak, manuel olarak kurmaktan kıyaslanamayacak kadar hızlıdır. Ekibin çalışmasını optimize etmeye ve bu tür prosedürler için harcanan zamanı büyük ölçüde azaltmaya olanak tanır.

Örneğin, Github, Jenkins, Redmine vb. yüklemeniz gerekir. Ortamı, paketleri ve web sunucusunu kendiniz kurmak yerine, işin çoğunun zaten yapıldığı bir konteyner çalıştırabilirsiniz.

hub.docker.com deposu bu türden yüz binlerce program içermektedir. Hepsi gerekli kütüphanelerle birlikte yüklenir, böylece diğer yazılımlarla çakışma olmaz.

Docker'ı uygulamanızı başka bir ortama taşımak için de kullanabilirsiniz. Bunu yapmak için konteynerinizi depoya yükleyin ve yeni sunucuya yükleyin.