Di post ini kita akan coba setup NFS share di docker. NFS di docker biasanya digunakan untuk share file aplikasi agar bisa di akses oleh beberapa container sekaligus.

NFS ini adalah cara share folder yang paling mudah setup nya di bandingkan yang lain. Hanya saja kekurangannya tidak ada otentikasi sama sekali (bisa diakali dengan setup firewall).

Lanjut setup NFS di docker, berikut caranya:

Server NFS

Server NFS

  1. Install NFS sudo apt install nfs-kernel-server
  2. Setup folder dan permission nya
sudo mkdir /mnt/nfs
sudo chown nobody:nogroup /mnt/nfs
#should 777 for simpler setup, nfs security was pain..
#we use firewall as nfs security btw
sudo chmod 777 /mnt/nfs
  1. Buka file /etc/exports, tambahkan
## NFS can only be accessed by this IP subnet
/mnt/nfs        192.168.43.0/24(rw,sync,no_subtree_check)
  1. Jangan lupa buka port 111 (TCP dan UDP) dan 2049 (TCP dan UDP) di server NFS hanya untuk subnet 192.168.43.0/24!

  2. Buat index.php file di folder /mnt/nfs/

<?php
echo "hello pono!";
?>
  1. Di client/komputer lain, buat file docker-compose.yml
version: "3.3"

services:
    nfs-nginx:
        image: trafex/php-nginx:latest
        ports:
            - 8080:8080
        volumes:
            - www-data:/var/www/html

volumes:
    www-data:
        driver_opts:
            type: nfs
            o: addr=192.168.43.114,nolock,rw,soft,nfsvers=4
            device: :/mnt/nfs
  1. Run docker-compose up and cek browser anda
    Setup NFS di Docker Berhasil!

    Setup NFS di Docker Berhasil!