diff --git a/README.md b/README.md index ef63c69..cf12733 100644 --- a/README.md +++ b/README.md @@ -114,6 +114,7 @@ A collection of delicious docker recipes. - [x] mosquitto - [x] motion-arm :+1: - [x] ndscheduler +- [x] nfs - [x] nginx - [x] ntopng - [x] nullmailer @@ -378,7 +379,6 @@ A collection of delicious docker recipes. - [x] mongo - [x] ccrisan/motioneye - [x] neo4j -- [x] erichough/nfs-server - [x] luzifer/nginx-sso - [x] n8nio/n8n - [x] illuspas/node-media-server :cn: diff --git a/nfs/Dockerfile b/nfs/Dockerfile index 861fd82..d1889ab 100644 --- a/nfs/Dockerfile +++ b/nfs/Dockerfile @@ -7,7 +7,7 @@ MAINTAINER EasyPi Software Foundation RUN set -xe \ && apt update \ - && apt install -y nfs-ganesha nfs-ganesha-vfs tini \ + && apt install -y --no-install-recommends nfs-ganesha nfs-ganesha-vfs tini \ && rm -rf /var/lib/apt/lists/* COPY ./docker-entrypoint.sh /entrypoint.sh diff --git a/nfs/README.md b/nfs/README.md new file mode 100644 index 0000000..8ece6a5 --- /dev/null +++ b/nfs/README.md @@ -0,0 +1,8 @@ +nfs +=== + +[NFS-Ganesha][1] is an NFSv3,v4,v4.1 fileserver that runs in user mode on most UNIX/Linux systems. + +> :warning: ~90 seconds to sync. + +[1]: https://github.com/nfs-ganesha/nfs-ganesha diff --git a/nfs/docker-compose.yml b/nfs/docker-compose.yml index 42c9a0b..4efb8b3 100644 --- a/nfs/docker-compose.yml +++ b/nfs/docker-compose.yml @@ -1,12 +1,13 @@ version: "3.8" services: nfs: - build: . - image: vimagick/nfs - ports: - - "2049:2049" + image: easypi/nfs volumes: - ./data:/data environment: + - EXPORT_ID=0 - EXPORT_PATH=/data + - PSEUDO_PATH=/ + privileged: true + network_mode: host restart: unless-stopped diff --git a/nfs/docker-entrypoint.sh b/nfs/docker-entrypoint.sh index f79bae4..84d3332 100755 --- a/nfs/docker-entrypoint.sh +++ b/nfs/docker-entrypoint.sh @@ -1,10 +1,13 @@ #!/bin/bash +# +# https://github.com/janeczku/docker-nfs-ganesha/blob/master/rootfs/opt/start_nfs.sh +# set -e # environment variables -: ${EXPORT_PATH:="/data"} +: ${EXPORT_PATH:="/data/nfs"} : ${PSEUDO_PATH:="/"} : ${EXPORT_ID:=0} : ${PROTOCOLS:=4} @@ -52,13 +55,16 @@ bootstrap_config() { echo "* Writing configuration" cat <${GANESHA_CONFIG} -NFSV4 { Graceless = ${GRACELESS}; } -EXPORT{ +NFSV4 { + Graceless = ${GRACELESS}; +} + +EXPORT { Export_Id = ${EXPORT_ID}; Path = "${EXPORT_PATH}"; Pseudo = "${PSEUDO_PATH}"; FSAL { - name = VFS; + Name = VFS; } Access_type = RW; Disable_ACL = true; @@ -66,7 +72,7 @@ EXPORT{ Protocols = ${PROTOCOLS}; } -EXPORT_DEFAULTS{ +EXPORT_DEFAULTS { Transports = ${TRANSPORTS}; SecType = ${SEC_TYPE}; } diff --git a/nfs/README.md.old b/nfs/old/README.md similarity index 100% rename from nfs/README.md.old rename to nfs/old/README.md diff --git a/nfs/arm.old/Dockerfile b/nfs/old/arm/Dockerfile similarity index 100% rename from nfs/arm.old/Dockerfile rename to nfs/old/arm/Dockerfile diff --git a/nfs/arm.old/docker-compose.yml b/nfs/old/arm/docker-compose.yml similarity index 100% rename from nfs/arm.old/docker-compose.yml rename to nfs/old/arm/docker-compose.yml diff --git a/nfs/arm.old/entrypoint.sh b/nfs/old/arm/entrypoint.sh similarity index 100% rename from nfs/arm.old/entrypoint.sh rename to nfs/old/arm/entrypoint.sh diff --git a/nfs/docker-compose.yml.old b/nfs/old/docker-compose.yml similarity index 100% rename from nfs/docker-compose.yml.old rename to nfs/old/docker-compose.yml