15%

Hemat 15% di Semua Layanan Hosting

Uji kemampuanmu dan dapatkan Diskon pada paket hosting apa saja

Gunakan kode:

Skills
Memulai
31.10.2024
1 +1

Cara Menginstal Docker pada CentOS: Panduan Lengkap Langkah demi Langkah

Docker telah mengubah secara fundamental bagaimana developer membangun, mengirim, dan menjalankan aplikasi. Dengan mengemas software ke dalam container yang ringan dan portabel, Docker menghilangkan masalah klasik “it works on my machine” dan secara dramatis menyederhanakan alur kerja pengembangan dan deployment produksi. Jika Anda menjalankan CentOS dan ingin memanfaatkan kekuatan containerization, panduan komprehensif ini memandu Anda melalui setiap langkah — dari pembaruan sistem segar hingga konfigurasi lanjutan.

Baik Anda men-deploy aplikasi web tunggal atau mengorkestra lingkungan multi-container yang kompleks, menginstal Docker dengan benar di CentOS adalah langkah kritis pertama.

Prasyarat

Sebelum Anda memulai, pastikan Anda memiliki:

  • Server CentOS 7 atau CentOS 8 (fisik atau virtual)
  • Akun pengguna dengan sudo privileges
  • Koneksi internet yang stabil
  • Keakraban dasar dengan command line Linux

> Pro Tip: Untuk pengalaman Docker terbaik, pertimbangkan menjalankannya di paket VPS Hosting. Server pribadi virtual memberi Anda akses root penuh, resource dedicated, dan fleksibilitas untuk menjalankan container tanpa batasan lingkungan bersama.

Langkah 1: Perbarui Sistem

Sebelum menginstal software baru apa pun, selalu perbarui paket yang ada untuk memastikan kompatibilitas dan keamanan. Jalankan perintah berikut:

sudo yum update -y

Perintah ini menyegarkan semua paket yang diinstal ke versi terbaru mereka. Mungkin memakan waktu beberapa menit tergantung berapa banyak update yang tertunda. Sistem yang sepenuhnya diperbarui mengurangi risiko konflik dependensi selama instalasi Docker.

Langkah 2: Instal Dependensi yang Diperlukan

Docker bergantung pada beberapa paket tingkat sistem untuk berfungsi dengan benar. Instal mereka dengan satu perintah:

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

Berikut adalah apa yang dilakukan setiap paket:

PaketTujuan
yum-utilsMenyediakan utilitas yum-config-manager untuk mengelola repository
device-mapper-persistent-dataDiperlukan untuk driver penyimpanan device mapper Docker
lvm2Dukungan Logical Volume Manager untuk backend penyimpanan Docker

Dependensi ini memastikan Docker dapat mengelola penyimpanan container secara efisien dan andal di sistem CentOS Anda.

Langkah 3: Tambahkan Repository Docker Resmi

Repository paket default CentOS tidak menyertakan paket Docker terbaru. Anda perlu menambahkan repository resmi Docker untuk mendapatkan rilis stabil paling terkini:

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

Perintah ini menambahkan repository CentOS resmi Docker ke daftar repository sistem Anda. Menggunakan sumber resmi menjamin Anda menerima paket Docker asli dan terkini langsung dari Docker Inc., daripada versi yang berpotensi ketinggalan zaman dari mirror pihak ketiga.

Anda dapat memverifikasi repository ditambahkan dengan sukses dengan membuat daftar repository yang dikonfigurasi:

sudo yum repolist

Langkah 4: Instal Docker Engine

Dengan repository di tempat, menginstal Docker sangat mudah:

sudo yum install -y docker-ce docker-ce-cli containerd.io

> Catatan: Disarankan untuk juga menginstal docker-ce-cli (antarmuka command-line Docker) dan containerd.io (container runtime) bersama engine utama untuk setup yang lengkap dan siap produksi.

Ini menginstal Docker Community Edition (CE) — versi Docker gratis dan open-source yang sempurna untuk beban kerja pengembangan dan produksi.

Langkah 5: Mulai dan Aktifkan Layanan Docker

Menginstal Docker tidak secara otomatis memulainya. Anda perlu memulai daemon Docker dan mengonfigurasinya untuk diluncurkan secara otomatis saat boot sistem:

sudo systemctl start docker
sudo systemctl enable docker
  • systemctl start docker — Memulai layanan Docker segera
  • systemctl enable docker — Mengonfigurasi Docker untuk memulai secara otomatis setiap kali server di-reboot

Verifikasi Status Layanan

Konfirmasi Docker berjalan dengan benar:

sudo systemctl status docker

Anda harus melihat output yang menunjukkan layanan adalah active (running). Jika status menunjukkan kesalahan apa pun, tinjau log sistem dengan journalctl -u docker untuk detail pemecahan masalah.

Langkah 6: Verifikasi Instalasi Docker

Jalankan tes bawaan Docker untuk mengonfirmasi semuanya berfungsi seperti yang diharapkan:

sudo docker run hello-world

Perintah ini melakukan hal berikut:

  1. Menghubungi registry Docker Hub
  2. Mengunduh image tes hello-world yang ringan
  3. Membuat container baru dari image tersebut
  4. Menjalankan container, yang mencetak pesan konfirmasi

Jika instalasi Anda berhasil, Anda akan melihat output yang dimulai dengan:

Hello from Docker!
This message shows that your installation appears to be working correctly.

Selamat — Docker sekarang sepenuhnya diinstal dan beroperasi di server CentOS Anda.

Langkah 7: Konfigurasi Docker untuk Pengguna Non-Root (Opsional tetapi Disarankan)

Secara default, perintah Docker memerlukan sudo (privilege root). Untuk keamanan dan kenyamanan di lingkungan pengembangan, Anda dapat memungkinkan pengguna non-root tertentu menjalankan perintah Docker dengan menambahkan mereka ke grup docker.

Buat Grup Docker

Dalam kebanyakan kasus, grup ini dibuat secara otomatis selama instalasi. Jika tidak, buatlah secara manual:

sudo groupadd docker

Tambahkan Pengguna Anda ke Grup Docker

Ganti your_username dengan nama pengguna Linux yang sebenarnya:

sudo usermod -aG docker your_username

Terapkan Perubahan

Keluar dan masuk kembali untuk menyegarkan keanggotaan grup Anda. Atau, aktifkan perubahan di sesi saat ini:

newgrp docker

Uji Tanpa Sudo

docker run hello-world

Jika ini berjalan tanpa sudo dan tanpa kesalahan izin, konfigurasi berfungsi dengan benar.

> Peringatan Keamanan: Grup docker memberikan privilege yang setara dengan pengguna root. Hanya tambahkan pengguna terpercaya ke grup ini di lingkungan produksi.

Langkah 8: Referensi Perintah Docker Penting

Setelah Docker berjalan, berikut adalah perintah paling penting yang akan Anda gunakan setiap hari:

Manajemen Container

# List all running containers
docker ps

# List all containers (including stopped ones)
docker ps -a

# Start a stopped container
docker start container_id

# Stop a running container
docker stop container_id

# Remove a container
docker rm container_id

# Remove all stopped containers at once
docker container prune

Manajemen Image

# List all locally stored images
docker images

# Pull an image from Docker Hub
docker pull image_name

# Pull a specific version/tag
docker pull image_name:tag

# Remove a local image
docker rmi image_name

# Remove all unused images
docker image prune -a

Menjalankan Container

# Run a container interactively
docker run -it image_name /bin/bash

# Run a container in detached (background) mode
docker run -d image_name

# Run a container with port mapping
docker run -d -p 8080:80 image_name

# Run a container with a custom name
docker run -d --name my_container image_name

Melihat Log dan Statistik

# View container logs
docker logs container_id

# Follow live log output
docker logs -f container_id

# View real-time resource usage
docker stats

Langkah 9: Konfirmasi Docker Dimulai saat Boot

Docker seharusnya sudah dikonfigurasi untuk memulai saat boot setelah menjalankan systemctl enable docker. Untuk memeriksa ulang atau mengaktifkan kembali perilaku ini:

sudo systemctl enable docker

Untuk menonaktifkan startup otomatis (misalnya, di mesin pengembangan di mana Anda tidak selalu membutuhkan Docker berjalan):

sudo systemctl disable docker

Langkah 10: Konfigurasi Lanjutan (Opsional)

Instal Docker Compose

Docker Compose adalah alat penting untuk mendefinisikan dan mengelola aplikasi multi-container menggunakan file konfigurasi YAML sederhana. Instal versi stabil terbaru:

sudo curl -L "https://github.com/docker/compose/releases/download/v2.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

Verifikasi instalasi:

docker-compose --version

Dengan Docker Compose, Anda dapat mendefinisikan seluruh stack aplikasi — web server, database, cache — dalam satu file docker-compose.yml dan menjalankan semuanya dengan satu perintah: docker-compose up -d.

Konfigurasi Daemon Docker

Anda dapat menyesuaikan perilaku Docker dengan mengedit (atau membuat) file konfigurasi daemon:

sudo nano /etc/docker/daemon.json

Contoh konfigurasi umum:

{
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "10m",
    "max-file": "3"
  },
  "storage-driver": "overlay2",
  "default-address-pools": [
    {"base": "172.17.0.0/16", "size": 24}
  ]
}

Setelah mengedit konfigurasi daemon, restart Docker untuk menerapkan perubahan:

sudo systemctl restart docker

Pengaturan daemon umum yang dapat Anda konfigurasi meliputi:

  • Log driver dan rotasi — Cegah log container mengonsumsi semua ruang disk
  • Storage driveroverlay2 adalah driver yang direkomendasikan untuk CentOS
  • Pengaturan DNS — Tetapkan server DNS kustom untuk container
  • Registry mirrors — Percepat pull image dengan mirror lokal

Konfigurasi Aturan Firewall (CentOS 7)

Jika Anda menjalankan firewalld, Anda mungkin perlu mengizinkan lalu lintas jaringan Docker:

sudo firewall-cmd --zone=public --add-masquerade --permanent
sudo firewall-cmd --reload

Memilih Lingkungan Hosting yang Tepat untuk Docker

Menjalankan Docker dalam produksi memerlukan lingkungan server yang andal dan berkinerja tinggi. Berikut adalah opsi terbaik tergantung pada kasus penggunaan Anda:

  • VPS Hosting — Ideal untuk sebagian besar deployment Docker. Akses root penuh, resource yang dapat diskalakan, dan harga yang hemat biaya menjadikan VPS pilihan utama untuk aplikasi containerized.
  • Dedicated Servers — Terbaik untuk lingkungan produksi lalu lintas tinggi atau ketika Anda membutuhkan performa CPU, RAM, dan penyimpanan maksimal untuk menjalankan puluhan container secara bersamaan.
  • GPU Hosting — Sempurna untuk beban kerja AI/ML yang berjalan di dalam container Docker yang memerlukan akselerasi GPU untuk pelatihan model atau inference.
  • VPS dengan cPanel — Jika Anda membutuhkan Docker bersama panel kontrol yang user-friendly untuk mengelola website dan email, kombinasi ini menawarkan yang terbaik dari kedua dunia.

Pemecahan Masalah Masalah Docker Umum di CentOS

Daemon Docker Gagal Memulai

Periksa log sistem untuk detail kesalahan:

journalctl -u docker --no-pager | tail -50

Kesalahan Permission Denied

Jika Anda melihat Got permission denied while trying to connect to the Docker daemon socket, pastikan pengguna Anda berada di grup docker dan bahwa Anda telah keluar dan masuk kembali.

Tidak Dapat Pull Image

Ver

15%

Hemat 15% di Semua Layanan Hosting

Uji kemampuanmu dan dapatkan Diskon pada paket hosting apa saja

Gunakan kode:

Skills
Memulai