A simple, quick, file sharing server using Send and ngrok to transfer encrypted files.
This solution combines Send's end-to-end encrypted file sharing with Ngrok's secure tunneling to create temporary download links for large files from your local machine. Files are automatically deleted after download or expiration, ensuring data security and ephemeral storage.
- Docker and Docker Compose installed
- Ngrok account and authtoken (free tier works)
- Clone or download this repository
git clone https://github.com/duaner5280/send-ngrok.git
cd send-ngrok- Create a
.envfile with your configuration:
DOCKER_SEND_IMAGE=timvisee/send:latest
NGROK_AUTHTOKEN=your_ngrok_authtoken
SEND_BASE_URL=http://localhost:1234 # Change if using HOST SEND_BASE_URL=https://some-custom-domain-ngrok-free.app
HOST=some-custom-domain-ngrok-free.app # Optional ngrok domain- Start the services:
docker compose up -d- Access your services:
- Send web interface: http://localhost:1234
- Ngrok dashboard: http://localhost:4040 (shows your public URL)
Default maximum file size is set to 10GB. You can modify this in compose.yml:
MAX_FILE_SIZE=10747904000 # Size in bytes- Local storage (default): Files are encrypted and stored in
./uploadsdirectory - S3 storage: Uncomment and configure S3 options in
compose.yml
For more information on customizing Ngrok review the docs.
Send container was built and based on the documentation send-docker-compose.
docker compose downBy default, files are:
- End-to-end encrypted
- Automatically deleted after download
- Expire after 24 hours