Simple file upload and sharing tool
Go to file
2023-10-29 20:08:58 +01:00
static/css Update css 2023-05-28 19:56:48 +02:00
templates Make sure it works. 2023-05-28 21:28:59 +02:00
.dockerignore Added dockerbuild and .dockerignore 2023-03-25 21:12:55 +01:00
.gitignore renamed venv to env 2023-04-04 18:46:26 +02:00
Dockerfile Reverse. 2023-03-26 11:41:56 +02:00
install.sh Fix installation script. 2023-06-15 09:25:58 +02:00
LICENSE first commit 2023-03-23 21:00:39 +01:00
main.py Update formatting. 2023-07-31 18:02:35 +02:00
README.md Resolve conflict. 2023-04-21 12:14:12 +02:00
requirements.txt Update dependencies. 2023-10-29 20:08:58 +01:00
upfast-nginx extracted nginx conf into file 2023-04-04 18:52:14 +02:00
upfast.service added install section to service 2023-04-05 12:54:52 +02:00

UpFast

Simple tool for uploading and sharing files that you can self-host.

How to host

Regular system

To run on a regular system I recommend to use a virtual environment to install the dependencies and run the project from there.

We will also be setting up an specific user to run the app as safe as possible with a systemd service file for startup

Installing

./install.sh

Running

systemctl start upfast.service

Start on boot

systemctl enable upfast.service

Docker

In the repo there is an included dockerfile to generate an image from the latest version of everything, to generate an image just run docker build . -t upfast (You need root privileges or to be in the docker group).

To run the docker container check the container id with docker images command.

sample docker run command

sudo docker run -p 8000:8000 -v ./upload:/usr/src/app/upload CONTAINER_ID

The sample command will need an upload directory, you can replace ./upload with a different path to save uploaded stuff.

Nginx Proxy setup

This is an example nginx proxy config for http

cp ./upfast-nginx /etc/nginx/sites-available/upfast
ln -sf /etc/nginx/sites-available/upfast /etc/nginx/sites-enabled/

Load config

systemctl reload nginx

Contributions

Thanks TLasT on his help with testing and documentation.