1. Use systemd file with name gunicorn-eshop.service to initialize gunicorn server with DJANGO_SETTINGS_MODULE environment var
2. Use systemd file with name celery-eshop.service to initialize celery following with these [instructions](http://docs.celeryproject.org/en/latest/userguide/daemonizing.html#usage-systemd "Celery | Daemonization")
2. Install virtualenv inside the project directory in run server
3. Install dependencies from inside the activated virtualenv
# Allow user to create db for running django tests
ALTER USER eshop_admin CREATEDB;
```
3. Install virtualenv inside the project directory and activate it:
```bash
virtualenv --python3=$(which python3) venv
source venv/bin/activate
```
4. Use systemd file with name gunicorn-eshop.service to initialize gunicorn server with DJANGO_SETTINGS_MODULE environment var
5. Use systemd file with name celery-eshop.service to initialize celery following with these [instructions](http://docs.celeryproject.org/en/latest/userguide/daemonizing.html#usage-systemd "Celery | Daemonization")
6. Install dependencies from inside the activated virtualenv:
```bash
pip install -r requirements.txt
```
7. Install all packages from package.json and collect static files
```bash
npm i
./node_modules/gulp/bin/gulp.js default
```
8. Create empty logs dir in project directory
###Development
1. Activate eshop environment using virtualenvwrapper(workon)
1. Activate eshop environment using virtualenv
2. Make .env file with the structure described in .env.sample file
3. Make migrations for modules: auth, accounts_ext, etc.
4. Start celery queue for tasks with the command:
`celery -A eshop_project worker -l info --pool=eventlet`
5. Make alias for gulp with alias command and path gulp executable file
6. Run `gulp default`
###Deployment
1. Activate eshop environment using virtualenvwrapper(workon)
1. Activate eshop environment using virtualenv
2. Make pull request from bitbucket repo by ssh using passphrase
3. Make .env file with the structure described in .env.sample file