Проблема с обслуживанием приложений на основе Flask с помощью uWSGI, Nginx и Tensorflow в CentOS 7

Я работаю с приложением с Tensorflow. Теперь мне нужно обслуживать это приложение на основе фляги с помощью Ngnix. Я использовал этот документ на Digitalocean.

Приложение прямого обслуживания с uWSGI в порядке, но как только служба переносится на Nginx, я получаю внутреннюю ошибку службы (500).

service отлично работает без библиотеки Tensorflow и Keras, поэтому я уверен, что конфигурация сервера в порядке.

мой проект.ini:

[uwsgi]
module = wsgi
    
master = true
processes = 5
    
socket = myproject.sock
chmod-socket = 660
vacuum = true

die-on-term = true

/etc/systemd/system/myproject.service:

[Unit]
Description=uWSGI instance to serve myproject
After=network.target
    
[Service]
User=user
Group=nginx
WorkingDirectory=/home/user/myproject
Environment = "PATH=/home/user/myproject/myprojectenv/bin"
ExecStart=/home/user/myproject/myprojectenv/bin/uwsgi --ini myproject.ini
    
[Install]
WantedBy=multi-user.target

Большое спасибо. Также извините за мой английский.

Udacity Nanodegree Capstone Project: Классификатор пород собак
Udacity Nanodegree Capstone Project: Классификатор пород собак
Вы можете ознакомиться со скриптами проекта и данными на github .
1
0
165
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Хорошо, я пытался изменить файл .ini, но это не сработало для меня. Например, добавить cheaper = 0 или изменить processes = 1 и master = false. но кто-то сказал мне использовать gunicorn вместо uWSGI, и это работает.

И так легко было переключиться с uWSGI на Gunicorn. На основании этого документа на Digitalocean вам просто нужно изменить

  1. (/etc/systemd/system/myproject.service) этот файл в строке 10 (часть ExecStart)
  2. (/etc/nginx/nginx.conf) этот файл в location части

** Если вы еще не настроили сервер, просто воспользуйтесь этой бумагой

Надеюсь быть полезным. Также извините за мой английский.

Другие вопросы по теме