ShFS is a shared network filesystem.
- The Project is not yet stable nor feature complete.
- Contributions are welcome.
- ⚡ Native Speed (Caching, FUSE, Compression)
- 🔒 Secure (Encryption)
- 📦 Multiple Shares (Volumes)
- 🐳 Dockerized Deployment
cargo build --release
cargo build --release --no-default-features
docker-compose build
- /config
- /volumes
Place your config in /config/config.json and forward a port to 30 inside the container
The config file is written in JSON
Example: config.json:
{
"name": "MyServer",
"volumes": [
{
"name": "First Vol",
"root": "/volumes/1"
},
{
"name": "Second Vol",
"root": "/volumes/2",
"readonly": true
}
]
}
name: Optional : Name of the Server : Default=Nonevolumes: Required : List of Volumes
name- Optional : Name of the Volume : Default: If nothing is providednameis the basename of the root pathdescription- Optional : Description of the Volume : Default=Noneroot- Required : Root Path of the Volumediscoverable- Optional : If set tofalsethe Volume will not show up inshfs list: Default=truepublic- Optional : If set totruethe Volume is accessable to everyone : Default=truetrash_enabled- Optional : Enabled the Trash Feature : Default=falsereadonly- Optional : Makes the Volume Read Only : Default=false