Cara Menggunakan Docker Compose untuk Install WordPress
Docker Compose adalah tool untuk mendefinisikan dan menjalankan aplikasi Docker multi-container. Misalnya, aplikasi web membutuhkan web server, database, dan runtime bahasa pemrograman.
Docker Compose menggunakan file YAML untuk mengkonfigurasi services. Kemudian dengan satu perintah, semua layanan atau container dibuat dan dijalankan.
Untuk memahami cara kerja Docker Compose kita akan mencoba install WordPress.
Install Docker Compose
Download docker-compose dari GitHub.
1 | wget https://github.com/docker/compose/releases/download/v2.0.1/docker-compose-linux-x86_64 -O /usr/bin/docker-compose |
Berikan permission execute.
1 | chmod +x /usr/bin/docker-compose |
Uji hasil instalasi.
1 | docker-compose --version |
Hasilnya.
1 | Docker Compose version v2.0.1 |
Install WordPress
Membuat file docker-compose.yml.
1 | nano docker-compose.yml |
Masukkan konfigurasinya.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | version: "3.8" services: db: image: mariadb:latest volumes: - db_data:/var/lib/mysql restart: always environment: MARIADB_ROOT_PASSWORD: secret MARIADB_DATABASE: db_wp MARIADB_USER: user_wp MARIADB_PASSWORD: secret_wp wordpress: depends_on: - db image: wordpress:latest volumes: - wordpress_data:/var/www/html ports: - "80:80" restart: always environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_USER: user_wp WORDPRESS_DB_PASSWORD: secret_wp WORDPRESS_DB_NAME: db_wp volumes: db_data: {} wordpress_data: {} |
Jalankan konfigurasi.
1 | docker-compose up -d |
Docker akan download images yang dibutuhkan dari Docker Hub, kemudian membuat Network, Volume, dan Container.
1 2 3 4 5 6 7 8 9 10 | ... ⠿ 373c21a041de Pull complete 13.6s ⠿ 3d1a9ce482cc Pull complete 22.8s ⠿ ecedf97e512c Pull complete 23.1s [+] Running 5/5 ⠿ Network root_default Created 0.1s ⠿ Volume "root_db_data" Created 0.0s ⠿ Volume "root_wordpress_data" Created 0.0s ⠿ Container root-db-1 Started 0.9s ⠿ Container root-wordpress-1 Started 2.7s |
Mengecek container yang sedang jalan.
1 | docker ps |
Hasilnya.
1 2 3 | CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 45b255d68d5e wordpress:latest "docker-entrypoint.s…" About a minute ago Up About a minute 0.0.0.0:80->80/tcp, :::80->80/tcp root-wordpress-1 d9ff05ec8f3d mariadb:latest "docker-entrypoint.s…" About a minute ago Up About a minute 3306/tcp root-db-1 |
Browse http://ipserver atau http://domain untuk melanjutkan instalasi WordPress.
Shutdown dan Cleanup
Untuk menghentikan dan menghapus container dan network digunakan command down.
1 | docker-compose down |
Untuk menghapus container, network, dan volumenya (file wordpress dan database) tambahkan opsi –volumes.
1 | docker-compose down --volumes |
Selamat mencoba 🙂
Sepertinya perlu ditambahkan Compose version di line pertama file docker-compose.yaml nya agar bisa jalan. Seperti: version: “3.3”
terima kasih koreksinya, sudah ditambahkan.
kalo cara untuk naikin limit upload nya gimana ya mas musa
coba masuk ke container dan config php.ini
mas minta tolong buatkan tutorial untuk subdomain pada docker
petunjuknya di konfigurasi nginx reverse proxy