Docker; veritabanlarını, web uygulamalarını ve araçları yalıtılmış konteynerlerde çalıştırmanızı sağlar, böylece yeni bir şey kurmak sunucunuzun geri kalanını bozmaz. Bu rehber Ubuntu'ya Docker Engine ve Docker Compose kurar ve ilk gerçek servisi çalıştırır.
1. Docker'ın deposundan kurun
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 $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
Kurulumu sudo docker run hello-world ile kontrol edin.
2. Docker'ı sudo olmadan çalıştırın
sudo usermod -aG docker $USER
newgrp docker
docker grubunun üyeleri makinede fiilen root düzeyinde yetkiye sahiptir, bu yüzden yalnızca güvendiğiniz kullanıcıları ekleyin.
3. İlk Compose dosyanız
Bir klasör ve Uptime Kuma izleme aracını çalıştıran bir compose.yaml oluşturun:
mkdir -p ~/kuma && cd ~/kuma
cat > compose.yaml <<'EOF'
services:
kuma:
image: louislam/uptime-kuma:1
restart: unless-stopped
ports:
- "127.0.0.1:3001:3001"
volumes:
- ./data:/app/data
EOF
docker compose up -d
127.0.0.1 adresine bağlamak portu genel internetten uzak tutar. Dışarıdan erişmek istediğinizde önüne Nginx veya Caddy gibi bir ters proxy koyun.
Günlük komutlar
docker psçalışan konteynerleri listeler.docker compose logs -fgünlükleri canlı izler.docker compose pull && docker compose up -ddaha yeni imajlara günceller.docker system prunekullanılmayan imajları ve durdurulmuş konteynerleri siler.
Güvenlik duvarları hakkında bir güvenlik uyarısı
Docker kendi iptables kurallarını yazar. "8080:80" olarak yayımlanan bir porta, UFW engellendiğini söylese bile internetten erişilebilir. Yalnızca herkese açık olması gerekenleri yayımlayın, özel servisleri 127.0.0.1 adresine bağlayın ve dışarıdan bir port tarayıcıyla test edin.
Sırada ne çalıştırmalı
Popüler kendi sunucunuzda barındırılan uygulamalar arasında Nextcloud, Vaultwarden, Gitea, Plausible, n8n ve Jellyfin bulunur. Tam bir örnek için Nextcloud'u kendi sunucunuzda barındırma rehberimize bakın.