Cara Install WordPress Dengan Docker di Ubuntu

Posted on

Panduan cara install WordPress dengan Docker di Ubuntu. Pada tutorial ini saya mengguanakan Ubuntu 20.04, untuk WordPress nanti akan diinstall menggunakan Compose seperti langkah-langkah berikut:

Update sistem

apt update -y

Install Docker dan Docker Compose

Install Docker

curl -fsSL https://get.docker.com | sh

install Docker Compose

apt install docker-compose-plugin docker-compose -y

Catatan:

  • Saya belum tahu mana yang benar docker-compose-plugin (dokumentasi) atau cukup docker-compose. Karena saat instalasi Docker engine, docker-compose-plugin sudah ikut terinstall tapi tidak bisa menjalankan perintah docker compose jadi saya sertakan keduanya saja: docker-compose-plugin dan docker-compose

Membuat folder project

Untuk persiapan, kita buat dahulu folder untuk menyimpan file docker-compose.yml, contoh:

mkdir /home/wordpress

Membuat file docker-compose.yml

Masuk ke dalam direktori yang kita buat

cd /home/wordpress

Kemudian membuat file docker-compose.yml

nano docker-compose.yml

Silahkan diadaptasikan kata sandi, user serta nama database, isinya sebagai berikut:

version: "3.9" 

services: 
   db: 
image: mariadb:10.3 
volumes: 
  - wp_data:/var/lib/mysql 
restart: always 
environment: 
  MYSQL_ROOT_PASSWORD: katasandiroot123 
  MYSQL_DATABASE: wordpress1 
  MYSQL_USER: wordpress1 
  MYSQL_PASSWORD: katasandiwordpress1 

wordpress: 
  depends_on: 
   - db 
  image: wordpress:latest 
  volumes: 
   - wp_file:/var/www/html 
  ports: 
   - "8000:80" 
  restart: always 
  environment: 
    WORDPRESS_DB_HOST: db 
    WORDPRESS_DB_USER: wordpress1 
    WORDPRESS_DB_PASSWORD: katasandiwordpress1 
    WORDPRESS_DB_NAME: wordpress1 

volumes: 
wp_data: {} 
wp_file: {}

Berdasarkan script di atas untuk database MySQL yang akan diinstall adalah MariaDB 10.3. tentu kalian bisa menggunakan versi lain, misalnya mysql:5.7 atau MariaDB yang lebih baru mariadb:10.6

Kemudian untuk mekanisme penyimpanan data, saya memlih volumes dari pada bind mounts, karena berdasarkan komparasi, bind mount memiliki fungsionalitas terbatas dibanding volume.

Untuk volume saya beri nama:

  • wp_data untuk penyimpanan database WordPress
  • wp_file untuk penyimpanan file statis WordPress

Jika kalian kelak menemui kendala kalian bisa backup manual juga, meskipun penyimpanan volume dikelola oleh Docker engine, tapi direktorinya bisa diakses pada /var/lib/docker/volumes di dalam mesin host.

Kalian juga bisa cek daftar volume yang dibuat dengan perintah: docker volume ls

Eksekusi

Sekarang waktunya eksekusi script YAML tersebut melalui docker compose untuk mulai membangun WordPress dengan Docker, segera jalankan perintah ini.

docker-compose up -d

Opsi -d adalah dettached mode yang artinya berjalan di belakang layar.

Semua akan serba otomatis terpasang, kita tinggal tunggu sampai selesai.

Pada akhirnya, kita bisa mengakses webnya melalui browser dengan port 8000

Selesai, selamat mencoba.

Semoga bermanfaat.

Leave a Reply

Your email address will not be published.