A user mode nfs server implemented in a container. Supports serving NFS (v3, v4).
Currently generates a config for just serving a local path over nfs.
However supplying GANESHA_CONFIGFILE
would allow ganesha
to be pointed to a bind mounted config file for other FASLs/more advanced configuration.
- ganesha: 2.8.2
GANESHA_LOGFILE
: log file locationGANESHA_PID
: log file locationGANESHA_CONFIGFILE
: location of ganesha.confGANESHA_OPTIONS
: command line options to pass to ganeshaGANESHA_EPOCH
: ganesha epoch valueGANESHA_EXPORT_ID
: ganesha unique export idGANESHA_EXPORT
: export locationGANESHA_NFS_PROTOCOLS
: nfs protocols to supportGANESHA_TRANSPORTS
: nfs transports to supportSTARTUP_SCRIPT
: location of a shell script to execute on start
EXPORT
{
# Export Id (mandatory, each EXPORT must have a unique Export_Id)
Export_Id = ${GANESHA_EXPORT_ID};
# Exported path (mandatory)
Path = ${GANESHA_EXPORT};
# Pseudo Path (for NFS v4)
Pseudo = /;
# Access control options
Access_Type = RW;
Squash = No_Root_Squash;
Root_Access = "${GANESHA_ROOT_ACCESS}";
Access = "${GANESHA_ACCESS}";
# NFS protocol options
Transports = "${GANESHA_TRANSPORTS}";
Protocols = "${GANESHA_NFS_PROTOCOLS}";
SecType = "sys";
# Exporting FSAL
FSAL {
Name = VFS;
}
}
docker run \
-d \
--privileged \
--name nfs-ganesha-server \
-v $(mktemp -d):/export:rw \
rtfpessoa/nfs-ganesha:dev