[TUGAS 2] Cara Instalasi WordPress di Docker — Tutorial Lengkap untuk Pemula
Cara Instalasi WordPress di Docker — Tutorial Lengkap untuk Pemula
Di dunia kerja profesional, terutama tim development modern, masalah ini sudah lama diselesaikan lewat sebuah alat bernama Docker. Alih-alih menginstal Apache dan MySQL langsung ke sistem operasi seperti XAMPP, Docker membungkus semuanya dalam "container" lingkungan terisolasi yang sudah membawa semua kebutuhannya sendiri. Tinggal salin satu file konfigurasi, environment yang sama bisa langsung jalan di komputer mana pun.
Menariknya, istilah "container" dalam Docker memang terinspirasi dari peti kemas pengiriman barang sama-sama soal membungkus sesuatu dalam format standar, supaya bisa dipindah ke mana saja tanpa peduli isi di dalamnya atau alat pengangkutnya. Dan sebelum Docker populer, developer sering menghadapi masalah klasik yang jadi bahan candaan di kalangan mereka sendiri: "kok di laptop saya jalan, tapi di server malah error?" Container hadir untuk menghilangkan alasan itu, karena environment-nya dibawa serta, bukan bergantung ke sistem operasi yang menjalankannya.
Tutorial ini akan memandu kamu instalasi WordPress secara lokal menggunakan Docker, dari nol sampai dashboard WordPress benar-benar aktif di browser.
Persiapan
Sebelum masuk ke langkah instalasi, pastikan Docker sudah terpasang di komputermu Docker Desktop untuk pengguna Windows atau Mac, atau Docker Engine untuk pengguna Linux.
Setelah terinstal, buka terminal (Command Prompt, PowerShell, atau Terminal) dan verifikasi dengan menjalankan:
docker --version
docker compose version
Kalau kedua perintah ini menampilkan nomor versi tanpa pesan error, berarti Docker sudah siap dan kamu bisa lanjut ke langkah berikutnya.
Langkah 1 - Menyiapkan Folder Proyek
Semua pekerjaan kita akan ditaruh dalam satu folder khusus, supaya rapi dan mudah dikelola. Buka terminal, lalu jalankan
Nama folder contoh: spc-wordpress-local
mkdir wordpress-local
cd wordpress-local
Perintah pertama membuat folder baru bernama wordpress-local, dan perintah kedua langsung membawa kamu masuk ke dalam folder tersebut. Semua file yang kita buat setelah ini akan berada di sini.
Langkah 2 - Menulis File Konfigurasi docker-compose.yml
Buat file dengan nama docker-compose.yml didalam folder spc-wordpress-local
Ini adalah jantung dari keseluruhan proses. Buat file baru di dalam folder wordpress-local dengan nama persis docker-compose.yml (boleh pakai text editor apa saja, misalnya VS Code atau Notepad++), lalu isi dengan konfigurasi berikut:
services:
db:
image: mysql:8.0
restart: always
environment:
MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_DATABASE: wordpress
MYSQL_USER: wpuser
MYSQL_PASSWORD: wppassword
volumes:
- db_data:/var/lib/mysql
wordpress:
image: wordpress:latest
restart: always
depends_on:
- db
ports:
- "8080:80"
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_NAME: wordpress
WORDPRESS_DB_USER: wpuser
WORDPRESS_DB_PASSWORD: wppassword
volumes:
- wp_data:/var/www/html
volumes:
db_data:
wp_data:
Sebelum lanjut, mari kita pahami dulu apa yang sebenarnya sedang kita tuliskan di sini karena ini bukan sekadar kode yang di-copy-paste tanpa pengertian.
File ini mendefinisikan dua service (layanan) yang akan berjalan bersamaan: db dan wordpress.
Kalau kamu sudah terbiasa dengan instalasi lewat XAMPP, dua service ini sebenarnya menggantikan peran yang sama persis. Service db menggantikan peran MySQL tempat WordPress menyimpan seluruh datanya (post, pengaturan, user). Service wordpress menggantikan peran Apache dan folder htdocs tempat file WordPress dijalankan dan ditampilkan ke browser.
Beberapa bagian penting yang perlu kamu perhatikan:
image:adalah "cetakan" siap pakai yang diambil otomatis dari Docker Hub kamu tidak perlu mengunduh dan menginstal MySQL atau WordPress secara manual seperti biasanya.environment:berisi pengaturan awal seperti nama database, username, dan password yang akan dipakai WordPress untuk terhubung ke database-nya.ports: "8080:80"artinya port 8080 di komputer kamu akan dihubungkan ke port 80 di dalam container itulah kenapa nanti kita mengakses WordPress lewatlocalhost:8080.volumes:adalah tempat penyimpanan data secara permanen, supaya data tidak hilang begitu saja saat container dimatikan atau dihidupkan ulang.depends_on:memastikan servicedbmenyala lebih dulu, baru kemudianwordpressdijalankan sebab WordPress butuh database yang sudah aktif untuk bisa terhubung dengannya.
Satu hal yang wajib diperhatikan
file YAML sangat sensitif terhadap indentasi (spasi di awal baris). Jangan gunakan tombol Tab, gunakan spasi yang konsisten. Kalau indentasinya berantakan, Docker tidak akan bisa membaca file ini dengan benar.
Langkah 3 - Menjalankan Container
Setelah file docker-compose.yml tersimpan, saatnya menyalakan semuanya. Masih di dalam folder spc-wordpress-local, jalankan:
docker compose up -d
Flag -d di sini berarti detached container akan berjalan di latar belakang, sehingga terminal kamu tidak "terkunci" dan tetap bisa dipakai untuk perintah lain.
Saat pertama kali dijalankan, Docker akan mengunduh image MySQL dan WordPress dari Docker Hub proses ini wajar memakan waktu beberapa menit tergantung kecepatan internet kamu. Kamu akan melihat log semacam Pulling db, Pulling wordpress, lalu akhirnya Started di layar terminal.
Langkah 4 - Memverifikasi Container Sudah Berjalan
Untuk memastikan semuanya berjalan lancar, cek status container dengan:
docker compose ps
Kalau berhasil, kamu akan melihat output kurang lebih seperti ini, dengan status Up di kedua service:
Kalau ada salah satu service yang statusnya Exited atau tidak muncul sama sekali, jangan panik itu tandanya ada yang perlu diperbaiki di konfigurasi. Cek dulu detail penyebabnya lewat:
docker compose logs
Log ini akan menunjukkan pesan error spesifik, biasanya seputar kesalahan penulisan di file docker-compose.yml atau port yang sudah dipakai aplikasi lain.
Langkah 5 - Menyelesaikan Instalasi Lewat Browser
Kalau status kedua service sudah Up, saatnya membuka browser dan mengakses:
http://localhost:8080
Langkah 5.1
Kamu akan langsung disambut wizard instalasi WordPress persis seperti proses "5-minute install" yang sudah dikenal luas sejak versi-versi awal WordPress. Isi saja bahasa, judul situs, username, dan password admin sesuai keinginanmu. Begitu selesai, dashboard WordPress akan langsung terbuka dan siap dipakai.
Langkah Tambahan (Opsional) - Menambahkan phpMyAdmin
Kalau kamu terbiasa mengelola database secara visual lewat phpMyAdmin seperti di XAMPP, kamu bisa menambahkannya juga ke dalam environment Docker ini.
Buka kembali file docker-compose.yml, lalu tambahkan blok berikut ini sejajar dengan db dan wordpress (di bawah services:):
phpmyadmin:
image: phpmyadmin:latest
restart: always
depends_on:
- db
ports:
- "8081:80"
environment:
PMA_HOST: db
Setelah disimpan, jalankan ulang perintah berikut supaya perubahan konfigurasi terbaca:
docker compose up -d
Sekarang kamu bisa mengakses phpMyAdmin lewat http://localhost:8081, dengan login memakai username wpuser dan password wppassword sesuai yang sudah didefinisikan di service db.
Syntax Container Sehari-hari
Setelah instalasi selesai, kamu tidak perlu mengulang semua langkah di atas setiap kali ingin bekerja. Berikut beberapa perintah yang akan sering kamu pakai:
# Menghentikan sementara (data tetap tersimpan)
docker compose stop
# Menyalakan kembali
docker compose start
# Menghapus container, tapi data volume tetap ada
docker compose down
# Reset total, termasuk menghapus seluruh data database
docker compose down -v
Perhatikan baik-baik perbedaan docker compose down dan docker compose down -v yang terakhir akan menghapus data secara permanen, jadi jangan sampai salah pakai kalau kamu masih butuh datanya.
Docker vs XAMPP
Setelah mencoba dua-duanya, wajar kalau muncul pertanyaan, sebenarnya kapan harus pakai XAMPP, dan kapan lebih baik pakai Docker?
XAMPP tetap jadi pilihan yang lebih ramah untuk pemula yang baru pertama kali belajar konsep server lokal semuanya terlihat langsung lewat control panel, tidak perlu memahami konsep container dulu.
Docker, di sisi lain, jadi jauh lebih relevan begitu kamu mulai bekerja dalam tim atau proyek yang butuh environment yang konsisten dan mudah direplikasi ke komputer lain. Banyak perusahaan teknologi bahkan mewajibkan environment pengembangan berbasis container justru supaya seluruh anggota tim, dari yang paling junior sampai senior, menjalankan proyek dengan versi software yang identik persis sehingga bug yang "cuma muncul di komputer si A" bisa dihindari sejak awal.
Tidak ada yang benar-benar salah dari keduanya keduanya cuma cocok untuk konteks yang berbeda. Tapi kalau kamu penasaran dengan bagaimana tim development profesional bekerja di luar sana, mencoba Docker adalah langkah kecil yang cukup berharga.
Penutup
Sampai di sini, kamu sudah berhasil menjalankan WordPress secara lokal menggunakan Docker mulai dari menulis file konfigurasi, menjalankan container, sampai menyelesaikan instalasi lewat browser. Prosesnya memang terasa berbeda dari instalasi manual lewat XAMPP, tapi begitu terbiasa, pendekatan ini justru terasa lebih rapi dan gampang dipindahkan ke komputer mana pun.
Kalau ada pertanyaan seputar tutorial ini, silakan tanyakan di kolom komentar atau grup diskusi kelas.
Selamat mencoba.




