# Docker nasıl kurulur?

https://kervanhosting.com/bilgi-bankasi/makale/docker-nasil-kurulur

Docker, uygulamaları yalıtılmış konteynerler içinde çalıştırmanızı sağlar; aynı sunucuda farklı sürümlerde birçok uygulamayı birbirine karışmadan barındırabilirsiniz. En güvenli kurulum, Docker'ın kendi resmi deposundan yapılanıdır; böylece güncellemeleri apt ile alırsınız.

## Ubuntu için kurulum

```
sudo apt update
sudo apt install -y ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
```

Debian'da aynı komutlardaki `linux/ubuntu` yollarını `linux/debian` ile değiştirin. Çok yeni bir Ubuntu sürümünde Docker'ın deposu henüz sürüme özel paket sunmuyorsa `apt update` hata verebilir; o durumda Docker'ın belgesindeki güncel yönergeye bakın. Tek komutla kuran `curl -fsSL https://get.docker.com | sudo sh` betiği de vardır; çalıştırmadan önce betiğin içeriğini incelemeniz iyi olur.

## Kurulumu doğrulayın

```
sudo systemctl status docker --no-pager
sudo docker run --rm hello-world
docker compose version
```

`hello-world` konteyneri bir karşılama mesajı yazdırıp çıkar. Bu, Docker'ın imajı indirdiğini ve konteyneri çalıştırdığını doğrular.

## sudo olmadan kullanmak (isteğe bağlı)

```
sudo usermod -aG docker $USER
```

Komuttan sonra oturumu kapatıp açın. **Önemli:** docker grubundaki kullanıcı fiilen root yetkisine sahiptir; yalnızca güvendiğiniz kullanıcıları ekleyin.

## İlk gerçek konteyner

```
sudo docker run -d --name web -p 127.0.0.1:8080:80 nginx:stable
curl -I http://127.0.0.1:8080
sudo docker logs web
sudo docker rm -f web
```

Birden fazla konteynerden oluşan uygulamalar için: [Docker Compose](https://kervanhosting.com/bilgi-bankasi/makale/docker-compose-ile-birden-fazla-konteyner-calistirma-ornek).

## Bilmeniz gereken üç tuzak

- **Güvenlik duvarını atlar:** `-p 8080:80` yazarsanız port UFW'de kapalı olsa bile internete açılır. Yalnızca yerel adrese bağlayın (`127.0.0.1:8080:80`) ve dışarıya Nginx ile açın: [UFW rehberi](https://kervanhosting.com/bilgi-bankasi/makale/ufw-ile-port-acma-ve-kapatma-ubuntu-guvenlik-duvari).
- **Diski doldurur:** Eski imajlar ve konteynerler birikir. `docker system df` ile bakın, `docker system prune` ile temizleyin (dikkatle): [disk doldu](https://kervanhosting.com/bilgi-bankasi/makale/disk-doldu-sunucumda-nasil-yer-acarim).
- **Veri konteynerle silinir:** Kalıcı veriyi volume'a koyun.

Kaynak olarak küçük bir sunucuda (1 GB) birkaç konteyner rahat çalışmaz; bellek kullanımını izleyin. Sunucu: [Linux VDS](https://kervanhosting.com/linux-vds).

## Sık sorulanlar

### apt install docker.io ile kurmak olmaz mı?

Olur; Ubuntu'nun kendi deposundaki `docker.io` paketi de çalışır ama sürümü eskidir. Güncel özellikler ve hızlı güvenlik düzeltmeleri için Docker'ın resmi deposunu öneririz.

### Permission denied while trying to connect to the Docker daemon socket hatası.

Kullanıcınız docker grubunda değil. `sudo` ile çalıştırın ya da kullanıcıyı gruba ekleyip oturumu yeniden açın.

### Docker Windows sunucuda çalışır mı?

Windows Server'da farklı bir yapı (Windows konteynerleri) vardır. Linux konteynerleri için Linux sunucu daha doğal ve yaygındır.

**İlgili makaleler**

- [Docker Compose ile birden fazla konteyneri tek dosyayla çalıştırma (örnekle)](https://kervanhosting.com/bilgi-bankasi/makale/docker-compose-ile-birden-fazla-konteyner-calistirma-ornek)
- [UFW ile port açma ve kapatma (Ubuntu güvenlik duvarı)](https://kervanhosting.com/bilgi-bankasi/makale/ufw-ile-port-acma-ve-kapatma-ubuntu-guvenlik-duvari)
- [Disk doldu, sunucumda nasıl yer açarım?](https://kervanhosting.com/bilgi-bankasi/makale/disk-doldu-sunucumda-nasil-yer-acarim)

*Sorununuz çözülmediyse [destek talebi açın](https://kervanhosting.com/destek-taleplerim). Hangi adımı denediğinizi ve ekranda ne gördüğünüzü yazarsanız çözüm çok daha hızlı olur.*
