Tactical Watermarks — Graduation Application
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Go to file
Castro0o 6fd437363a update on nginx config and service file 5 years ago
__pycache__ Read me with gunicorn -env SCRIPT_NAME=/watermarks 5 years ago
app relative paths for storing files - so the app can work in any dir 5 years ago
.gitignore urls in templates /about -> about 5 years ago
README.md update on nginx config and service file 5 years ago
app.log first commit 5 years ago
config.py first commit 5 years ago
file.db first commit 5 years ago
gunicorn_run.sh first commit 5 years ago
requirements.txt first commit 5 years ago
run.py first commit 5 years ago
wsgi.py first commit 5 years ago

README.md

Run

in Development

export FLASK_APP=run.py export FLASK_ENV=development flask run

Using gunicorn:

gunicorn --env SCRIPT_NAME=/watermarks -w 4 -b 127.0.0.1:5000 app:app --log-level debug

  • -w workers
  • -b bind to address / unix socker

And gunicorn with using unix sock: (this how it should run in production) ` gunicorn --env SCRIPT_NAME=/watermarks --workers 4 --bind unix:app.sock -m 007 app:app --log-level debug

in Production with gunicorn and unix sockets

Based on https://medium.com/faun/deploy-flask-app-with-nginx-using-gunicorn-7fda4f50066a

systemd service file

Add to /etc/systemd/system/watermarks.service

[Unit]
After=network.target

[Service]
User=psc
Group=www-data
WorkingDirectory=/var/www/TacticalApp
Environment="PATH=/var/www/TacticalApp/venv/bin"
ExecStart=/var/www/TacticalApp/venv/bin/gunicorn --env SCRIPT_NAME=/watermarks --workers 4 --bind unix:app.sock -m 007 app:app

[Install]
WantedBy=multi-user.target

enable & start service file

systemctl enable watermarks.service

systemctl start watermarks.service

It is also a good idea to check the status of the service systemctl status watermarks.service

Nginx config

location / {
    # if using gunicorn with app sock, use:
    proxy_pass http://unix:/var/www/TacticalApp/app.sock;
    # if using gunicord with port 5000, use:
    proxy_pass http://127.0.0.1:5000;
    }

debug.

It might be helpful to enable gunicorn logging, while in development, to check what is going on, by replacing in watermarks.service, the ExecStart= value with:

ExecStart=/var/www/TacticalApp/venv/bin/gunicorn --log-level debug --error-logfile /var/www/TacticalApp/app.log --workers 4 --bind unix:app.sock -m 007 app:app

And reloading the services systemctl daemon-reload

systemctl restart watermarks.service

and the start following app.log: tail -f /var/www/TacticalApp/app.log

But in the long run logging should be disabled


09.06.2020 Handling url path /watermarks