/docker-machine-nfs

Activates NFS on docker-machine

Primary LanguageShellMIT LicenseMIT

Docker Machine NFS

Requirements

Mac OS X 10.9+

Activates NFS for an existing boot2docker box created through Docker Machine.

⚠️ There can be an issue with the NFS under Mac OS X High Sierra (see issue #79 for more info) ⚠️

Windows 10 with WSL

Install

Standalone

curl -s https://raw.githubusercontent.com/adlogix/docker-machine-nfs/master/docker-machine-nfs.sh |
  sudo tee /usr/local/bin/docker-machine-nfs > /dev/null && \
  sudo chmod +x /usr/local/bin/docker-machine-nfs
brew install docker-machine-nfs

Supports

  • Virtualbox
  • Parallels
  • VMware Fusion
  • VMware Vsphere
  • Xhyve
  • Hyperkit

Usage

  • Create docker-machine as usual
  • Run docker-machine-nfs
                       ##         .
                 ## ## ##        ==               _   _ _____ ____
              ## ## ## ## ##    ===              | \ | |  ___/ ___|
          /"""""""""""""""""\___/ ===            |  \| | |_  \___ \
     ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ /  ===- ~~~     | |\  |  _|  ___) |
          \______ o           __/                |_| \_|_|   |____/
            \    \         __/
             \____\_______/


Usage: $ docker-machine-nfs <machine-name> [options]

Options:

  -f, --force               Force reconfiguration of nfs
  -n, --nfs-config          NFS configuration to use in /etc/exports. (default to '-alldirs -mapall=\$(id -u):\$(id -g)')
  -s, --shared-folder,...   Folder to share (default to /Users)
  -m, --mount-opts          NFS mount options (default to 'noacl,async')

Examples:

  $ docker-machine-nfs test

    > Configure the /Users folder with NFS

  $ docker-machine-nfs test --shared-folder=/Users --shared-folder=/var/www

    > Configures the /Users and /var/www folder with NFS

  $ docker-machine-nfs test --shared-folder=/var/www --nfs-config="-alldirs -maproot=0"

    > Configure the /var/www folder with NFS and the options '-alldirs -maproot=0'

  $ docker-machine-nfs test --mount-opts="noacl,async,nolock,nfsvers=3,udp,noatime,actimeo=1"

    > Configure the /User folder with NFS and specific mount options.

  $ docker-machine-nfs test --ip 192.168.1.12

    > docker-machine will connect to your host machine via this address

Troubleshooting

  • Failed to mount on WSL
Allow following exe's in "Windows Firewall" or any other firewall software used
   Directory -- c:/Program Files/nfsd
   -  pmapd.exe
   -  nfssrv.exe
   -  nfsd.exe

Credits