2 min read

Docker Container İmajları Oluşturma

Giriş

Docker, yazılım uygulamalarını hızlı ve güvenilir bir şekilde geliştirmek, dağıtmak ve çalıştırmak için kullanılan bir platformdur. Bu makalede, Docker ile nasıl container imajları oluşturulacağını adım adım inceleyeceğiz. Container imajları, uygulamanızın çalışması için gereken her şeyi (kod, kütüphaneler, sistem araçları ve ayar dosyaları) içerir.

1. Docker Nedir?

Docker, uygulamaları kapsüllenmiş bir ortamda çalıştırmaya olanak tanır. Bu sayede, uygulamanızın her ortamda (geliştirme, test, üretim) aynı şekilde çalışmasını sağlarsınız. Docker, container teknolojisini kullanarak uygulamanızın tüm bağımlılıklarını bir araya getirir ve taşınabilir hale getirir.

2. Docker Kurulumu

2.1. Docker'ı İndirme ve Kurma

  • Ubuntu için:
sudo apt-get update
sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get install -y docker-ce
  • Docker'ı çalıştırma:
sudo systemctl start docker
sudo systemctl enable docker

2.2. Docker'ı Doğrulama

Docker kurulumunun başarılı olduğunu doğrulamak için aşağıdaki komutu çalıştırabilirsiniz:

docker --version

3. Docker Container İmajları

3.1. İmaj Oluşturma

Docker imajları, uygulamanızın tüm bağımlılıklarını ve yapılandırmalarını içerir. Aşağıda basit bir Node.js uygulaması için bir imaj oluşturma süreci anlatılmaktadır.

3.2. Dockerfile Oluşturma

Bir Dockerfile, imajınızı oluşturmak için gerekli talimatları içerir. Aşağıdaki örnek, basit bir Node.js uygulaması için Dockerfile içeriğini gösterir:

# Temel imaj olarak Node.js kullan
FROM node:14

# Çalışma dizinini ayarla
WORKDIR /usr/src/app

# Package.json ve package-lock.json dosyalarını kopyala
COPY package*.json ./

# Bağımlılıkları yükle
RUN npm install

# Uygulama dosyalarını kopyala
COPY . .

# Uygulamayı başlat
CMD ["npm", "start"]

# Container dışındaki portu belirt
EXPOSE 3000

3.3. İmajı Oluşturma

Dockerfile dosyasının bulunduğu dizinde aşağıdaki komutu çalıştırarak imajı oluşturabilirsiniz:

docker build -t my-node-app .

Burada my-node-app imajınızın adıdır.

4. Container'ı Çalıştırma

Oluşturduğunuz imajdan bir container başlatmak için aşağıdaki komutu kullanabilirsiniz:

docker run -d -p 3000:3000 --name my-node-app-container my-node-app

Bu komut, my-node-app imajından my-node-app-container isimli bir container oluşturur ve 3000 portunu dışarı açar.

5. Container Yönetimi

5.1. Çalışan Container'ları Listeleme

Çalışan tüm container'ları listelemek için:

docker ps

5.2. Container'ı Durdurma

Container'ı durdurmak için:

docker stop my-node-app-container

5.3. Container'ı Silme

Container'ı silmek için:

docker rm my-node-app-container

6. İmaj Yönetimi

6.1. İmajları Listeleme

Docker'da mevcut imajları listelemek için:

bash

Kodu kopyala

docker images

6.2. İmajı Silme

Bir imajı silmek için:

docker rmi my-node-app

Sonuç

Bu makalede, Docker ile container imajları oluşturmanın temel adımlarını öğrendiniz. Docker, uygulamanızı taşınabilir hale getirirken, bağımlılık yönetimi ve dağıtım süreçlerini büyük ölçüde kolaylaştırır. Artık kendi uygulamalarınızı Docker kullanarak geliştirebilir ve dağıtabilirsiniz.

Ek Kaynaklar

  • Docker Resmi Dokümantasyonu
  • Docker Hub - Paylaşılan imajları bulabileceğiniz platform.

Docker ile ilgili daha fazla pratik yaparak, konteyner teknolojisini daha iyi anlayabilir ve uygulamalarınızı daha verimli bir şekilde yönetebilirsiniz!