Install LEMP dengan Docker

Pada tutorial kali ini, kita akan belajar cara install LEMP dengan menggunakan Docker. Docker adalah perangkat lunak yang digunakan untuk mengemas, mengirim, dan menjalankan aplikasi secara konsisten di environment yang terisolasi yang disebut container. Dengan Docker, developer dapat mengemas semua dependensi dan konfigurasi yang dibutuhkan oleh aplikasi ke dalam container yang dapat dijalankan di berbagai sistem operasi. Hal ini memungkinkan aplikasi untuk berjalan dengan cepat dan konsisten di berbagai environment, memudahkan proses development, deployment, dan skalabilitas aplikasi.

Install Docker

Install Docker di Ubuntu dimulai dengan mengunduh key untuk repository Docker.

Memasang repository Docker.

Memperbarui cache repository.

Menginstall Docker.

Install Docker Compose

Docker Compose adalah tool yang digunakan untuk mendefinisikan dan menjalankan aplikasi yang terdiri dari beberapa layanan yang terkontainerisasi menggunakan Docker. Dengan Docker Compose, developer dapat menyusun konfigurasi yang terdiri dari beberapa kontainer Docker dan mendefinisikan hubungan serta pengaturan yang diperlukan antara container-container tersebut. Hal ini memudahkan developer untuk menyatukan dan mengelola berbagai komponen aplikasi dalam development environment yang terisolasi dan mudah di-deploy ke production environment.

Mengunduh Docker Compose dari github.com/docker/compose.

Memberikan permission execute.

File Docker Compose

Membuat direktori untuk project lemp.

Masuk ke direktori lemp.

Membuat file index.php yang berisi fungsi phpinfo().

Membuat file Docker Compose.

Masukkan konfigurasinya.

Ringkasan docker-compose.yml:

  • Membuat container php-nginx yang berbasis image webdevops/php-nginx:8.2-alpine, forward port 80 di host ke port 80 di container, dan mounting direktori www ke /app.
  • Membuat container mariadb yang berbasis image mariadb:10.6.8, membuat dan mounting volume vol-mariadb ke /var/www/lib/mysql, dan set environment variabel.
  • Membuat container phpmyadmin yang berbasis image phpmyadmin/phpmyadmin, terhubung ke container mariadb, dan forward port 8181 di host ke port 80 di container.

Build Container

Menjalankan docker-compose untuk build container.

Setelah build container selesai, cek apakah container sudah berjalan.

Browse http://IP-server untuk menguji apakah Nginx web server sudah aktif dan dapat menjalankan script PHP.

PHP Information
PHP Information

Akses http://IP-server:8181 untuk menguji apakah phpMyAdmin sudah aktif dan dapat mengakses database.

phpMyAdmin
phpMyAdmin

Dengan menggunakan konfigurasi Docker Compose di atas, kita akan dapat menginstal LEMP stack (Linux, Nginx, MariaDB, PHP) dengan menggunakan Docker. Container php-nginx menyediakan Nginx web server dengan PHP, container mariadb menyediakan MariaDB database, dan container phpmyadmin menyediakan web interface untuk mengelola MariaDB database yang terhubung.

Selamat mencoba 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *