ngrok-file-server
is a tiny secured file server
You can quickly share any content running a simple docker image !!!
It's fast ๐, secured ๐ and pretty lite ๐
What do you really need ?
https tunneling (port-forwarding) is provided by ngork go implementation. So, you need a ngrok token ๐
... if don't have a ngrok account, don't worry, it's free ๐ฌ
If you're familiar with golang, you can build your own server but we recommand to use our docker image ๐ณ
You can download docker desktop and use default settings.
Ok, so now, you may have a ngrok token and run docker on your machine.
Run the following docker command in order to share the content of your local path.
docker run -it --rm -e NGROK_AUTHTOKEN="YOUR_TOKEN" -v $(pwd):/shared ghcr.io/trendev/ngrok-file-server
this example is based on Linux/MacOS usage. If you run
ngrok-file-server
on Windows, you may change local path command$(pwd)
by something like%cd%
or direcly set the path...
do not forget to replace "YOUR_TOKEN" by your ngrok token...
It will pull our docker image and then, build and start a new container ๐
You may see an output like this :
ngrok ingress url: https://2927-90-22-212-26.eu.ngrok.io
Copy the URL ๐
Paste the previous URL in your favorite web browser.
if you use a free ngrok account, please, just accept the disclaimer ๐ฝ
And here we are โ
You can browse your content and share the URL with anyone and access to your file server from anywhere ๐
You can also control access using an oauth2 provider (like Google, Facebook, Github, Linkedin, etc) and setting an authorized domain (for eg, only trendev.fr
users).
you can find the supported list here
docker run -it --rm -e NGROK_AUTHTOKEN=$NGROK_AUTHTOKEN -v $(pwd):/shared ghcr.io/trendev/ngrok-file-server --provider=google
docker run -it --rm -e NGROK_AUTHTOKEN=$NGROK_AUTHTOKEN -v $(pwd):/shared ghcr.io/trendev/ngrok-file-server --provider=google --domain=trendev.fr
If you need more, you can open an issue and describe your requirement... and BTW, you can also star the repo ๐