получение `TemplateNotFound` при переключении сервера приложений с gunicorn на uwsgi - PullRequest
0 голосов
/ 10 декабря 2018

Я решил обновить наш сервер redash до версии 5, дело в том, что redsah поставляется из коробки с nginx в качестве веб-сервера и gunicorn в качестве сервера приложений и Flask, и я хотел использовать uwsgi в качестве приложениясервер, поэтому я изменил следующую строку:
exec /usr/local/bin/gunicorn --timeout 300 -b 0.0.0.0:5000 --name redash -w${REDASH_WEB_WORKERS:-4} redash.wsgi:app
на:
exec /usr/local/bin/uwsgi --ini redash.ini
где redash.ini:

[uwsgi]
module = redash.wsgi:app
harakiri = 300

master = true
processes = 4
threads = 4
thunder-lock = true
socket = :5000
protocol = http
enable-threads = true

callable = app

disable-logging=False  

Мой проект выглядит так:

app 
├── CHANGELOG.md
├── CONTRIBUTING.md
├── Dockerfile
├── Dockerfile.cypress
├── Jenkinsfile
├── LICENSE
├── Makefile
├── README.md
├── bin
│   ├── bundle-extensions
│   ├── docker-entrypoint
│   ├── flake8_tests.sh
│   ├── get_changes.py
│   ├── pack
│   ├── pre_compile
│   ├── release_manager.py
│   ├── run
│   └── upgrade
├── client
│   └── app
├── docker-compose.production.yml
├── docker-compose.yml
├── manage.py
├── netlify.toml
├── now.json
├── package-lock.json
├── package.json
├── pytest.ini
├── redash
│   ├── __init__.py
│   ├── admin.py
│   ├── authentication
│   ├── cli
│   ├── destinations
│   ├── extensions.py
│   ├── handlers
│   ├── metrics
│   ├── models.py
│   ├── monitor.py
│   ├── permissions.py
│   ├── query_runner
│   ├── serializers.py
│   ├── settings
│   ├── tasks
│   ├── templates
│   ├── utils
│   ├── version_check.py
│   ├── worker.py
│   └── wsgi.py
├── redash.ini
├── requirements.txt
├── requirements_all_ds.txt
├── requirements_dev.txt
├── requirements_oracle_ds.txt
├── setup
│   ├── README.md
│   ├── docker-compose.yml
│   ├── generate_key.sh
│   ├── packer.json
│   └── setup.sh
├── setup.cfg
├── tests
│   ├── __init__.py
│   ├── factories.py
│   ├── handlers
│   ├── models
│   ├── query_runner
│   ├── tasks
│   ├── test_authentication.py
│   ├── test_cli.py
│   ├── test_configuration.py
│   ├── test_handlers.py
│   ├── test_models.py
│   ├── test_permissions.py
│   └── test_utils.py
└── webpack.config.js  

проблема в том, что когда я переключаюсь на uwsgi и пытаюсь перейти на экран входа в систему, я получаю TemplateNotFound исключение из flask при попытке извлечь файл login.html.
Iничего не изменилось в проекте, кроме строки исполнения выше, и она отлично работает с gunicorn.Любая идея, что в uwsgi может вызвать это исключение?почему uwsgi ведет себя по-другому и не может найти папку с шаблонами?

...