
Daftar Isi
Anda membayangkan bisa mengelola ratusan kontainer Docker hanya dengan satu perintah otomatis? Tidak perlu lagi masuk ke tiap server, tidak perlu menjalankan docker run berulang kali. Itulah kekuatan integrasi Docker dengan Ansible — kombinasi sempurna antara otomatisasi dan efisiensi.
Namun, banyak pemula merasa bingung saat mulai belajar. “Harus mulai dari mana?”, “Bagaimana cara Ansible berinteraksi dengan Docker?”, atau “Apakah perlu konfigurasi rumit?” adalah pertanyaan umum yang sering muncul.
Tenang, artikel ini hadir untuk menjawab semua kebingungan itu. Di sini Anda akan menemukan:
- Penjelasan singkat tentang bagaimana Ansible bekerja dengan Docker.
- Langkah-langkah instalasi dan konfigurasi praktis.
- Contoh playbook sederhana untuk mengelola kontainer Docker.
- Tips agar integrasi berjalan lancar dan efisien.
Apa Itu Ansible dan Mengapa Digunakan Bersama Docker?
Ansible adalah alat otomatisasi (automation tool) berbasis agentless, artinya tidak memerlukan software tambahan di sisi target (hanya perlu SSH dan Python). Dengan Ansible, Anda bisa mengatur konfigurasi server, menjalankan perintah massal, hingga melakukan deployment aplikasi secara otomatis.
Docker, di sisi lain, adalah platform yang memungkinkan Anda menjalankan aplikasi dalam kontainer — lingkungan terisolasi yang ringan dan konsisten di berbagai sistem.
Ketika keduanya digabungkan, hasilnya luar biasa:
Anda bisa membangun, menjalankan, dan mengelola kontainer Docker secara otomatis dengan satu playbook Ansible.
Langkah-Langkah Integrasi Docker dengan Ansible
Berikut panduan praktis langkah demi langkah untuk menghubungkan keduanya.
1. Instalasi Docker
Jika Anda belum memiliki Docker, jalankan perintah berikut di sistem Linux (contoh: Rocky Linux, Ubuntu, atau Debian):
sudo dnf install docker-ce docker-ce-cli containerd.io -y
sudo systemctl enable docker --nowPeriksa apakah Docker berjalan:
sudo docker psJika muncul daftar kontainer (atau kosong tanpa error), berarti instalasi berhasil.
2. Instalasi Ansible
Selanjutnya, instal Ansible di mesin controller (biasanya laptop atau server utama):
sudo dnf install ansible -yCek versi:
ansible --versionPastikan versi Ansible sudah 2.9 atau lebih baru agar modul Docker bisa digunakan.
3. Instal Koleksi Docker untuk Ansible
Agar Ansible dapat berinteraksi dengan Docker, kita perlu menginstal koleksi (collection) resminya:
ansible-galaxy collection install community.dockerKoleksi ini berisi berbagai module seperti:
docker_container→ untuk membuat dan mengelola kontainer.docker_image→ untuk menarik (pull) dan menghapus image.docker_network→ untuk mengatur jaringan antar kontainer.
4. Membuat Inventory Ansible
Buat file inventory sederhana bernama hosts.ini:
[docker_hosts]
localhost ansible_connection=localArtinya, Ansible akan menjalankan perintah Docker langsung di mesin lokal.
5. Menulis Playbook untuk Docker
Buat file bernama docker_playbook.yml dengan isi berikut:
---
- name: Deploy Kontainer Docker dengan Ansible
hosts: docker_hosts
become: true
tasks:
- name: Pastikan image Nginx sudah terunduh
community.docker.docker_image:
name: nginx
source: pull
- name: Jalankan kontainer Nginx
community.docker.docker_container:
name: webserver
image: nginx
ports:
- "8080:80"
state: startedPlaybook ini akan menarik image Nginx dari Docker Hub dan menjalankan kontainer di port 8080.
6. Menjalankan Playbook
Eksekusi playbook Anda dengan perintah:
ansible-playbook -i hosts.ini docker_playbook.ymlJika semua benar, Anda akan melihat status changed atau ok di terminal.
Sekarang, buka browser dan akses:
http://localhost:8080Anda akan melihat halaman default Nginx berjalan di dalam kontainer Docker — semua dikendalikan lewat Ansible!
Anda telah memahami dasar integrasi Docker dan Ansible — mulai dari instalasi hingga membuat playbook pertama. Dengan otomatisasi ini, Anda bisa menghemat waktu, menghindari kesalahan manual, dan menjaga konsistensi deployment di berbagai server.
Ingin belajar lebih lanjut?
Baca juga: Membangun Infrastruktur Otomatis dengan Ansible Roles dan Playbooks
