SHCS: Self Hosted Cloud Storage
solution of sef hosted cloud storage
Installation
pip install shcs
Or
git clone https://github.com/fraoustin/shcs.git cd shcs python setup.py shcs
Usage
for run shcs
cd shcs --help Usage: shcs [options] args run a api server for Self Hosted Cloud Storage Options: --version show program's version number and exit -h, --help show this help message and exit -H HOST, --host=HOST the hostname to listen on -p PORT, --port=PORT the port of the webserver -d DIR_SHCS, --dir=DIR_SHCS dir of SHCS -l LEVEL, --log=LEVEL level of log: DEBUG,INFO,WARNING,CRITICAL,ERROR by Frederic Aoustin SHCS -d ./data
URL | explain |
---|---|
/api/doc | documentation of Api |
/api/login | log a user in |
/api/logout | logout |
/api/version | get version |
/api/path | list of files and directorys |
/api/rm | del file or directory |
/api/mkdir | create a directory |
/api/upload | upload file |
Configuration
list of parameters
- SHCS_HOST (default 0.0.0.0)
- SHCS_PORT (default 5000)
- SHCS_CONF_DIR (default .)
- SHCS_LEVEL_LOG (default logging.DEBUG)
- SHCS_USER_XX OR USERS (default guest/guest)
load configuration from 3 ways (in order)
- from ~/.shcs/conf.py, sample
USERS = [{'id':0, 'username':'tutu','password':'toto'}, {'id':1, 'username':'tyty','password':'titi'}, ] SHCS_PORT=80
- from env
export SHCS_PORT=80 export SHCS_USER_0='tutu:toto' export SHCS_USER_1='tyty:titi'
- from command line for ABLOG
SHCS -p 80
Test
git clone https://github.com/fraoustin/shcs.git cd shcs python setup.py install python -m unittest discover -s test/