TeknoCerdas.com – Salam cerdas untuk kita semua. Podman adalah alternatif terbaru selain Docker untuk menjalankan container. Pada tulisan ini TeknoCerdas akan menunjukkan cara menjalankan WordPress pada Podman.
Sama dengan Docker, menjalankan WordPress menggunakan Podman memiliki beberapa keunggulan dibanding cara instalasi manual. Keunggulan utama terletak pada mudahnya konfigurasi yang sudah siap pakai atau out-of-the-box.
Jika belum membaca artikel pengenalan tentang Podman dan juga WordPress di Docker silahkan ikuti tautan berikut ini.
Pada MacOS dan Windows, Podman hanya menjadi remote client sedangkan instalasi Podman sendiri ada pada Linux baik itu di VM atau sebuah server yang berada di jariangan luar.
Daftar Isi
Persiapan Menjalankan WordPress di Podman
Sebelum mulai menjalankan WordPress ada beberapa prasyarat yang harus dipenuhi agar dapat memahami tulisan ini dengan baik.
- Memiliki pemahaman dasar tentang WordPress.
- Memiliki pemahaman dasar tentang Docker.
- Podman telah terinstal di komputer atau server anda.
Jika anda tidak memiliki prasyarat diatas tenang saja, silahkan lanjutkan membaca. Karena mungkin banyak informasi baru yang diperoleh meskipun tanpa mencoba langsung tutorial ini.
Siapkan direktori baru yang digunakan untuk menyimpan persistent data dari Podman. Diasumsikan bahwa direktori kerja ada pada ~/Projects/WordPress.
~/Projects/WordPress
+ database/
+ www/
Direktori database
digunakan untuk menyimpan file-file MySQL dan www/
digunakan untuk menyimpan file-file WordPress.
Menjalankan Container MySQL
Karena absennya tool seperti Docker Compose pada Podman, maka digunakan konfigurasi manual untuk menghubungkan antara WordPress dan MySQL.
Gunakan perintah berikut untuk menjalankan container MySQL dan melakukan setup root password.
$ podman run --name mysql_wp \
-v ./database:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=teknocerdas123 \
-d -p 3306:3306 mysql:5.7
Seperti terlihat bahwa argumen yang digunakan Podman sama dengan Docker. Hal ini memang disengaja untuk menjaga kompatibilitas.
--name
digunakan untuk memberi nama container-v
untuk melakukan mount direktori lokal ke container-e
untuk memberikan nilai pada environment variable-d
agar proses menjadi background-p
mapping port dari host ke containermysql:5.7
container image dan versi yang digunakan
Menjalankan Container WordPress
Berikutnya adalah menjalankan container WordPress yang terhubung ke container MySQL. Agar saling terhubung maka container WordPress menggunakan alamat IP dari Host:3306 untuk koneksi ke container MySQL.
$ podman run --name wp \
-e WORDPRESS_DB_HOST=172.31.25.31 \
-e WORDPRESS_DB_USER=root \
-e WORDPRESS_DB_PASSWORD=teknocerdas123 \
-e WORDPRESS_DB_NAME=teknocerdas_db \
-p 8080:80 -d wordpress:5.4.2
- Environment
WORDPRESS_DB_HOST=172.31.25.31
digunakan untuk memberikan alamat IP dari Host yang sudah melakukan port mapping ke container MySQL di port 3306. Pada komputer lokal umumnya127.0.0.1
ataulocalhost
. - Environment
WORDPRESS_DB_NAME=teknocerdas_db
untuk menentukan database yang digunakan. Akan otomatis dibuat jika belum ada. wordpress:5.4.2
container image dari WordPress dan versi yang digunakan.
Untuk mengecek container yang sudah up dan running gunakan perintah ps
.
$ podman ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3f8da9ce8064 docker.io/library/mysql:5.7 mysqld 4 hours ago Up 4 hours ago 0.0.0.0:3306->3306/tcp mysql_wp
e6c45373317e docker.io/library/wordpress:5.4.2 apache2-foregroun... 47 minutes ago Up 47 minutes ago 0.0.0.0:8080->80/tcp wp
Dapat terlihat kedua container sudah berjalan. Buka browser dialamat http://localhost:8080/ untuk mulai menggunakan WordPress.
Untuk menghentikan container gunakan perintah stop
.
$ podman stop mysql_wp wp
Untuk menghapus container gunakan perintah rm
.
$ podman rm mysql_wp wp
Dapat terlihat semua perintah Podman identik dengan apa yang ada pada Docker. Ini akan memudahkan pengguna untuk migrasi ke Podman dengan mudah.