Cara Lengkap Install Docker di VPS
Pendahuluan
Docker adalah platform open-source yang dirancang untuk mengotomatisasi penyebaran aplikasi sebagai container yang dapat dieksekusi di lingkungan yang terisolasi. Docker Hub adalah layanan berbasis cloud untuk berbagi aplikasi Docker dan komponen pendukungnya.
Menginstal Docker di VPS (cloud server) menjadi penting karena memungkinkan Anda untuk menjalankan aplikasi dengan lebih efisien dan konsisten di berbagai lingkungan, termasuk pengembangan, pengujian, dan produksi. Manfaat utama dari Docker meliputi portability, isolasi container, dan kemampuan deployment yang cepat.
Dalam panduan ini, kita akan menggunakan versi terbaru Docker Engine dan menjalankannya di Ubuntu 22.04 atau 24.04.
Persiapan VPS
Sebelum memulai, pastikan VPS Anda memenuhi spesifikasi minimal yang direkomendasikan. Direkomendasikan setidaknya memiliki 1 GB RAM dan 10 GB ruang disk.
Langkah pertama adalah melakukan update dan upgrade sistem:
sudo apt update && sudo apt upgrade -y
Install paket dasar yang diperlukan:
sudo apt install -y curl ca-certificates gnupg
Buatlah user non-root dengan hak akses sudo sebagai best practice:
sudo adduser <username>
sudo usermod -aG sudo <username>
Instalasi Docker di VPS (Cara Resmi)
Tambahkan Docker GPG key dan repository:
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Install Docker Engine:
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin
Install docker-compose-plugin sebagai bonus:
sudo apt install docker-compose-plugin
Verifikasi instalasi Docker dengan perintah berikut:
docker --version
docker run hello-world
Konfigurasi Awal Docker
Mulai dan aktifkan layanan Docker agar berjalan setiap kali sistem dinyalakan:
sudo systemctl start docker
sudo systemctl enable docker
Tambahkan user ke grup docker agar tidak perlu menggunakan sudo setiap kali menjalankan perintah Docker:
sudo usermod -aG docker <username>
Restart VPS atau service untuk menerapkan perubahan:
sudo reboot
Login ke Docker Hub
Jika Anda belum memiliki akun Docker Hub, Anda dapat membuatnya di Docker Hub.
Login ke Docker Hub menggunakan perintah:
docker login
Pastikan untuk menyimpan credential dengan aman.
Menggunakan Docker Hub di VPS
Pull image dari Docker Hub, misalnya:
docker pull nginx
docker pull postgres
docker pull hello-world
Menjalankan container pertama:
docker run --name mynginx -d -p 8080:80 nginx
Contoh mapping port, volume, dan variable environment:
docker run --name mynginx -d -p 8080:80 -v /my/data:/data -e "MY_ENV_VAR=value" nginx
Push Image Sendiri ke Docker Hub
Bangun Dockerfile sederhana:
FROM ubuntu:latest
CMD ["echo", "Hello, Docker!"]
Tag image dengan username Docker Hub Anda:
docker build -t <yourusername>/myimage .
docker tag <yourusername>/myimage:latest <yourusername>/myimage:v1.0
Push image ke registry pribadi:
docker push <yourusername>/myimage:v1.0
Untuk menarik image pribadi di VPS lain:
docker pull <yourusername>/myimage:v1.0
Tips Keamanan & Best Practices
- Gunakan Docker Compose untuk pengelolaan multi-container.
- Konfigurasikan firewall UFW dan buka port yang diperlukan saja.
- Lakukan update Docker secara rutin.
- Bersihkan container dan image yang tidak terpakai.
Troubleshooting Umum
- Jika Docker daemon tidak berjalan, coba periksa statusnya dengan
sudo systemctl status docker. - Jika mendapatkan pesan "Permission denied", pastikan user Anda ada di grup docker.
- Error "Cannot connect to Docker daemon" bisa disebabkan oleh Docker yang belum aktif.
- Untuk error login di Docker Hub, pastikan username dan password benar.
- Jika container tidak bisa mengakses internet, periksa pengaturan jaringan VPS.
Kesimpulan
Dalam artikel ini, kita telah membahas cara menginstal Docker di VPS, mulai dari persiapan hingga penggunaan Docker Hub. Langkah selanjutnya yang direkomendasikan adalah mempelajari Docker Compose, Portainer, dan Docker Swarm untuk manajemen container yang lebih kompleks.
Untuk informasi lebih lanjut, kunjungi dokumentasi resmi Docker dan Docker Hub.