Aplicación web "El Almacén de archivos" sitio ligero para compartir archivos https://botadero.rmgss.net
Rodrigo Garcia Saenz 081ff483a6 Corrigiendo subir nombres de archivo de que sea un emoji solamente | %!s(int64=4) %!d(string=hai) anos | |
---|---|---|
almacen | %!s(int64=4) %!d(string=hai) anos | |
botadero | %!s(int64=4) %!d(string=hai) anos | |
cronjobs | %!s(int64=4) %!d(string=hai) anos | |
docs | %!s(int64=4) %!d(string=hai) anos | |
logs | %!s(int64=4) %!d(string=hai) anos | |
tests | %!s(int64=4) %!d(string=hai) anos | |
.gitignore | %!s(int64=4) %!d(string=hai) anos | |
LICENSE | %!s(int64=8) %!d(string=hai) anos | |
README.md | %!s(int64=4) %!d(string=hai) anos | |
app.ini | %!s(int64=4) %!d(string=hai) anos | |
botadero.py | %!s(int64=6) %!d(string=hai) anos | |
cronjobs.py | %!s(int64=4) %!d(string=hai) anos | |
manage.py | %!s(int64=6) %!d(string=hai) anos | |
requirements.txt | %!s(int64=4) %!d(string=hai) anos | |
run.sh | %!s(int64=4) %!d(string=hai) anos | |
wsgi.py | %!s(int64=4) %!d(string=hai) anos |
Repositorio Original: https://notabug.org/strysg/botadero
Mirror github: https://github.com/strymsg/almacenArchivos
Servicio web centralizado para compartir archivos en una red local o internet.
Un directorio público donde cualquiera puede subir archivos y estos se pueden descargar libremente.
Para ahorrar espacio de almacenamiento, los archivos se borran después de un número ajustable de tiempo (días, minutos o segundos) y también se evita la posiblidad de subir archivos duplicados usando algoritmos para obtener digestos sha1, md5, sha256, etc.
Entre las funcionalidades que se pueden ajustar están:
Esta aplicación no guarda datos sobre quién sube los archivos, licencia AGPL.
# descargar el repositorio
git clone https://notabug.org/strysg/botadero
cd botadero
# crear entorno virtual python 3
virtualenv --python=python3 venv
# activar entorno virtual
. venv/bin/activate
# instalar dependencias
pip install -r rquirements.txt
# variables de entorno
export FLASK_APP=botadero.py
export FLASK_ENV=development
# ejecutar en modo desarrollo
flask run
# ejecutar pruebas (desarrollo)
pytest
La aplicación necesita que se ejecute el script cronjobs.py
que se encarga de actualizar el tiempo restante de los archivos y eliminarlos. Es recomendable agregar la ejecución de este script como tarea programada, en sistemas UNIX por ejemplo agregando una entrada en /etc/crontab.
*/1 * * * * user cd /home/user/alamcenArchivos; export FLASK_ENV=production;venv/bin/python3 cronjobs.py >> cronjobs.log 2>&1
Centralized web server to share files on a local network or over the internet.
A public directory where anyone can upload files and so they can be freely downlaoded.
To save storage, files are deleted after an adjustable number of days and file duplication is avoided by using sha1, md5, sha256, etc. digests.
Some customizable features are:
This application does not store data about who upload files, AGPL License.
# download project
git clone https://notabug.org/strysg/botadero
cd botadero
# create python 3 virtual environment
virtualenv --python=python3 venv
# activate it
. venv/bin/activate
# install dependencies
pip install -r rquirements.txt
# environment variables
export FLASK_APP=botadero.py
export FLASK_ENV=development
# run development mode
flask run
# testing
pytest
The aplication requires the script cronjob.py
to be executed, this updates the files ramaining time and also removes them if necesary. It is recomended to make the execution of this script a cronjob, on UNIX system for instance adding to /etc/crontab.
*/2 * * * * user export FLASK_ENV=production; /home/user/almacenArchivos/venv/bin/python3 /home/user/almacenArchivos/cronjobs.py