Initial commit: MicroNAS share manager (Phase 1)

This commit is contained in:
Honey committed 2026-06-19 21:02:46 +02:00
commit f2aca2e3ea
8 files changed
+671

No files matched your search

+46
View File
@@ -0,0 +1,46 @@
# Fileshare Web
Lightweight web GUI to manage SMB shares, NFS exports, and quotas on a single home server (Proxmox LXC/VM). Runs directly on the host as a systemd service.
## Requirements
```
apt install samba nfs-kernel-server quota python3 python3-venv
```
## Install
```bash
# Copy files
cp -r . /opt/fileshare-web
# Create virtualenv and install deps
python3 -m venv /opt/fileshare-web/venv
/opt/fileshare-web/venv/bin/pip install flask gunicorn
# Create environment file with your credentials
cat > /etc/fileshare-web.env <<EOF
FILESHARE_USER=admin
FILESHARE_PASS=changeme
EOF
chmod 600 /etc/fileshare-web.env
# Install and enable the systemd service
cp /opt/fileshare-web/fileshare-web.service /etc/systemd/system/
systemctl daemon-reload
systemctl enable --now fileshare-web
```
The app listens on `127.0.0.1:5000`. Put a reverse proxy (nginx) in front if you want HTTPS, or reach it directly on the LAN by binding to `0.0.0.0:5000` (change `-b` in the unit file).
## Dev / test
```bash
FILESHARE_USER=admin FILESHARE_PASS=secret flask --app app run --debug
# or with docker-compose for a sandbox:
docker compose up
```
## Auth
Set `FILESHARE_USER` and `FILESHARE_PASS` in the environment (or `EnvironmentFile`). All routes require HTTP Basic Auth. Never expose this to the internet — LAN or Tailscale only.