1.8 KiB
1.8 KiB
Docker setup (no provided docker image atm)
- clone the repo
- rename ./calireWebCompanion/settings.json.bak to settings.json
- change the secret key
- run
build --tag calibreweb:1.0 . -f ./deployment/Dockerfile
to build the image - run your container with your bind/mount your volumes/paths/things Here's an example of step 5
docker run --publish 80:80\
-v '/home/massiveatoms/Desktop/logs:/usr/src/app/data' \
-v '/run/media/massiveatoms/1AEEEA6EEEEA421D/Documents and Settings/MassiveAtoms/Documents/Calibre Library/:/usr/src/app/calibredir' \
--name cw calibreweb:1.0.1
your Calibre path/volume/whatever needs to be mounted at /usr/src/app/calibredir
, and you need to mount a volume for the db and logs at /usr/src/app/data
Issues with it at the moment:
- we still need to do something to create a random secret key. Atm, this would still
Docker (provided image)
not done yet
non docker setup
this might need to be modified, since some things have changed to adapt it for docker setup
- clone repo
- pip install -r requirements.txt
- rename the settings.json.bak to settings.json, change logging folder, change secret key, set isdocker to false
- install gunicorn and nginx
- move this nginx.conf to /etc/nginx
- create a user and group
www
- make whatever user nginx runs as (for now, www) the owner of calibredir
- give execute permissions to parent of calibredir
- cd to repo, run
gunicorn CalibreWebCompanion.wsgi
- start nginx
sudo systemctl restart nginx
- make steps 9 and 10 happen on startup?
Slight issues with this atm:
- where to do ssl?
Suggestions:
- We might want to use sockets instead of ip/port?
- autostart gunicorn/nginx
- some extra instrumentation for gunicorn https://docs.gunicorn.org/en/latest/deploy.html