Cara menggunakan wyveo nginx php fpm

NATVPS.id – Instalasi NGINX dan PHP-FPM pada Docker dapat membantu jika ingin memasang web server pada VPS diatas container, jadi environment lebih terisolasi (resources dapat diatur). Pada postingan kali ini, kami akan menjelaskan langkah-langkah untuk memasang NGINX dan PHP-FPM pada Docker Compose di NAT VPS.

Tutorial ini dibuat oleh @canchooseusername. Terima kasih atas ilmunya!

Persyaratan

  • Memiliki Domain dengan sebuah A record yang telah disambungkan ke IP publik VPS
  • Port 80 masih terbuka. Jika sudah dipakai oleh (misalkan) aaPanel, ganti port pada pengaturan Docker (akan dijelaskan nanti)

Instalasi Docker dan Docker Compose

Instalasi Docker

Sebelum dapat memasang Docker Compose, kita perlu memasang Docker terlebih dahulu.

Pertama-tama, masukkan command berikut untuk memperbarui index repositori dan memasang package

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

apt update
apt install curl -y

Cara menggunakan wyveo nginx php fpm

Selanjutnya, pasang Docker dengan script otomatis:

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

Cara menggunakan wyveo nginx php fpm

Tunggu hingga muncul tampilan seperti ini:

Cara menggunakan wyveo nginx php fpm

Jika sudah, maka Docker berhasil dipasang. Yeay!

Instalasi Docker Compose

Sekarang, kita dapat memasang Docker Compose.

Pergi ke https://github.com/docker/compose/releases. Gulir ke bawah, lalu cari file yang bertuliskan docker-compose-linux-x86_64, seperti ini:

Cara menggunakan wyveo nginx php fpm

Klik kanan lalu salin URL nya. Kemudian, masukkan command dibawah untuk mengunduh Docker Compose

wget <URL-Yang-Disalin>

Contohnya:

wget https://github.com/docker/compose/releases/download/v2.5.1/docker-compose-linux-x86_64

Cara menggunakan wyveo nginx php fpm

Lalu, masukkan command dibawah untuk memasang Docker Compose (memindahkannya ke

curl -fsSL https://get.docker.com | sh -
2 dan mengatur permission):

mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

Docker Compose berhasil dipasang. Untuk mengeceknya, jalankan

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

Cara menggunakan wyveo nginx php fpm

Mengatur Web Server (Docker Compose)

Docker dan Docker Compose berhasil dipasang. Saatnya untuk memasang web server!

Buat folder-folder yang diperlukan dengan command dibawah:

cd ~
mkdir docker && cd docker
mkdir lemp && cd lemp

Cara menggunakan wyveo nginx php fpm

Sebelum melanjutkan, install package

curl -fsSL https://get.docker.com | sh -
4 terlebih dahulu agar dapat mengedit file:

apt install nano -y

Cara menggunakan wyveo nginx php fpm

Kemudian, buat file baru dengan nama

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

nano docker-compose.yml

Paste-kan kode dibawah pada file tersebut:

version: "3"
services:
  nginx:
    restart: always
    image: nginx:stable-alpine
    container_name: lemp-nginx
    links:
      - php
    ports:
      - "80:80"
  php:
    restart: always
    image: php:fpm-alpine
    container_name: lemp-php
    volumes:
      - ./webcontent:/var/www/html
  db:
    restart: always
    image: mariadb
    container_name: lemp-db
    environment:
      MYSQL_ROOT_PASSWORD: password_goes_here

Sebelum melanjutkan, ada baiknya untuk memahami maksud dari kode diatas. Kode diatas akan digunakan oleh Docker Compose untuk membuat container baru. Docker Compose akan memasang NGINX (line 3 – 13), PHP (line 14 – 19), dan MariaDB (line 20 – 25).

BACA  Cara Memasang aaPanel di NAT VPS

Untuk yang sudah memasang software yang menggunakan port 80 (misalnya aaPanel), ganti angka 80 pertama pada

curl -fsSL https://get.docker.com | sh -
7 (line 13) dengan port yang masih terbuka. Misalkan penulis ingin mengarahkannya ke port 5003, maka penulis mengganti
curl -fsSL https://get.docker.com | sh -
8 menjadi
curl -fsSL https://get.docker.com | sh -
9.

Simpan file tersebut dengan cara menekan Ctrl + X, y, lalu Enter.

Cara menggunakan wyveo nginx php fpm

 

Memulai Web Server (Docker Compose)

Konfigurasi yang diperlukan sudah selesai.  Jalankan dan hentikan Docker Compose sebagai persiapan pertama kalinya:

docker-compose up -d
docker-compose stop

Cara menggunakan wyveo nginx php fpm

Jalankan kembali Docker Compose dengan memasukkan command berikut:

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

Cara menggunakan wyveo nginx php fpm

Pengaturan Domain Forwarding

Agar web server dapat diakses oleh publik, maka kita perlu mengatur domain forwarding agar port 55003 dapat diakses dari luar VPS.

Kebanyakan penyedia NAT VPS telah mengatur konfigurasi port yang dimana tiap user mendapatkan 21 port terbuka. Namun untuk NAT VPS dari HostData.id, user harus melakukan forwarding port VPS ke port IP publik yang terbuka secara manual. Jika seperti itu, maka ganti port pada file

curl -fsSL https://get.docker.com | sh -
5. Silahkan kontak penyedia VPS masing-masing. Tetapi untuk user NAT VPS HostData.id, kami telah memberikan langkah-langkah detail untuk melakukan forwarding port (request port), silahkan baca di (postingan sebelumnya).

Atur domain forwarding dengan konfigurasi berikut:

  • Protocol: TCP
  • Source Domain/IP: 103.180.125.226
  • Source Port: Masukkan port sesuai keinginan Anda, contohnya 55003
  • Destination IP:IP private VPS (pilihan yang ada)
  • Destination Port: 55003

Cara menggunakan wyveo nginx php fpm

Selesai! Sekarang, web server NGINX dapat diakses pada http://103.180.125.226:SourcePort, misalnya http://103.180.125.226:55003.

Cara menggunakan wyveo nginx php fpm

Penutup

Begitulah langkah-langkah instalasi NGINX dan PHP-FPM di Docker Compose pada NAT VPS. Perlu diketahui bahwa file konfigurasi yang disediakan sangatlah minimal. Konfigurasi lebih lanjut diperlukan.