Docker Run Komutu ve Parametreleri
4 min read

Docker Run Komutu ve Parametreleri

Docker run komutunu ve parametrelerini detaylıca inceliyoruz.
Docker Run Komutu ve Parametreleri
Photo by Gabriel Heinzer / Unsplash

Docker run komutu, Docker imajından bir container oluşturmayı ve çalıştırmayı sağlar. Bu komut, Docker imajını belirli bir şekilde çalıştırmak veya belirli parametrelerle çalıştırmak istediğinizde kullanılır.

Docker run komutunun yapısı şu şekildedir:

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
  • IMAGE Docker imajının adı veya etiketidir.
  • COMMAND Docker container'ında çalıştırılacak komuttur.
  • ARG Docker container'ında çalıştırılacak komutun parametreleridir.

OPTIONS, Docker run komutunu belirli bir şekilde çalıştırmak için kullanabileceğiniz çeşitli parametreleri içermektedir. Örneğin, container'ı arka planda çalışmasını sağlamak için -d parametresini kullanabilirsiniz.

Aşağıda tüm OPTIONS parametrelerine açıklamaları ve örnekleriyle birlikte bakacağız.

  • -d or --detach: Docker container'ı arka planda çalışmasını sağlar.
docker run -d ubuntu:20.04
  • -p or --publish: Docker container'ının belirli bir host portu ile container portu arasında bir bağlantı kurmasını sağlar.
docker run -p 8080:80 ubuntu:20.04
  • --name: Docker container'ına isim vermeyi sağlar.
docker run --name os ubuntu:20.04
  • --rm: Docker container çalışmasının durdurduktan sonra otomatik olarak silinmesini sağlar.
docker run --rm ubuntu:20.04
  • -v or --volume: Docker container ve host arasında veri paylaşmasını sağlar. Host üzerindeki bir path'i container içindeki path'e bind mount ile bağlar.
docker run -v /home/kerteriz:/app/kerteriz ubuntu:20.04
  • -e or --env: Docker container içinde ortam değişkeni tanımlaması yapmayı sağlar.
docker run -e VAR_NAME=value ubuntu:20.04
  • -i: Container içinde açılan terminalin interaktif olmasını sağlar, yani terminal üzerinden verilerin alınmasına ve görüntülenmesine olanak tanır.
docker run -i ubuntu:20.04 /bin/bash
  • -t: Container içinde bir tty terminal açılmasını sağlar, yani terminal ekrana yazılacak verileri görüntüleme şansı verir.
docker run -t ubuntu:20.04 /bin/bash

-- ve -t hakkında daha fazla bilgi için şu yazımızı okuyabilirsiniz:

Docker Run Interactive (-i) ve TTY (-t) Parametrelerine Detaylı Bakış
Docker Run Interactive (-i) ve TTY (-t) parametreleri STDIN ve shell işlevlerini kullanmanızı sağlar.
  • --cpus: Docker container'ının kullanabileceği en fazla CPU sayısını belirler.
docker run --cpus=0.5 ubuntu:20.04
  • --memory: Docker container'ının kullanabileceği bellek miktarını belirler.
docker run --memory=256m ubuntu:20.04

--cpus ve --memory hakkında daha fazla bilgi için şu yazımızı okuyabilirsiniz:

Docker CPU ve Bellek Kısıtlamalarını Kullanmak
Docker container’ların CPU ve bellek kullanımını kısıtlayarak kaynaklarınızı daha etkili kullanabilirsiniz.
  • --network: Docker container'ının bağlı olduğu Docker ağını belirler.
docker run --network=mynetwork ubuntu:20.04

--network hakkında daha fazla bilgi için şu yazımızı okuyabilirsiniz:

Docker Network Driver Tipleri
Docker Network, containerlar arasında haberleşmeyi sağlamak için kullanılan önemli bir araçtır.
  • --restart: Docker container'ın durduktan sonra otomatik olarak yeniden başlamasını sağlar.
docker run --restart always ubuntu:20.04

restart komutunun alabileceği parametre değerleri şunlardır:

Seçenek Açıklama
no Container'ı yeniden başlatmaz. Varsayılan seçenek budur.
on-failure[:max-retries] Container'ın exit kodu 0 dışındaki bir değer döndüğünde yeniden başlatma. İsteğe bağlı olarak, yeniden başlatma sayısını sınırlayabilirsiniz.
unless-stopped Container'ı stop komutu ile durdurulmadığı veya Docker'ın kendisi durdurulmadığı veya yeniden başlatılmadığı container'ı yeniden başlatır.
always Her zaman yeniden başlatır.
  • --add-host: Docker container'a özel bir host tanımı ekler.
docker run --add-host=example.com:192.168.1.100 ubuntu:20.04
  • --hostname: Docker container'ın host ismini belirler.
docker run --hostname mycontainer ubuntu:20.04
  • --ulimit: Docker container içinde açılabilecek maksimum dosya sayısını ayarlar.
docker run --ulimit nofile=1024:1024 ubuntu:20.04
  • --read-only: Docker container sadece okuma modunda çalışır ve dosya sistemi üzerinde değişiklik yapamaz.
docker run --read-only ubuntu:20.04
  • --user: Docker container içindeki bir işlem tarafından kullanılan kullanıcı ve grup kimliklerini ayarlanır.
docker run --user username ubuntu:20.04

veya

docker run --user 1000:1000 ubuntu:20.04
  • --workdir: Docker container içindeki varsayılan çalışma dizinini ayarlar.
docker run --workdir /app ubuntu:20.04

workdir komutu hakkında daha fazla bilgi için şu yazımızı okuyabilirsiniz:

Docker WORKDIR Komutu
Workdir komutu ile belirtilen dizine kolaylıkla geçiş yapabilirsiniz.

Docker serimizin sıradaki yazısı için aşağıdaki bağlantıyla devam edebilirsiniz.

Docker Run Interactive (-i) ve TTY (-t) Parametrelerine Detaylı Bakış
Docker Run Interactive (-i) ve TTY (-t) parametreleri STDIN ve shell işlevlerini kullanmanızı sağlar.