Flask + Conda + Ubuntu + WSGI - PullRequest
       10

Flask + Conda + Ubuntu + WSGI

0 голосов
/ 13 января 2020

Я создал программу на Flask с виртуальной средой Anaconda (conda) (я назвал ее 'env1'). На моем локальном хосте все работает нормально, теперь я пытаюсь развернуть его в сети на Ubuntu.

Я установил conda, а затем создал среду 'env1'. Затем установите там все необходимые мне модули (модуль spleeter в моем случае).

Также я настроил и протестировал мое приложение Flask.

Вот что отлично работает:

мой файл .wsgi:

import sys

sys.path.insert(0, '/var/www/www-root/data/api1/SplitApp/App')

from init import app as application

мое Flask приложение:

from flask import Flask

app = Flask(__name__)
@app.route("/")
def hello():
    return 'OK'
if __name__ == "__main__":
    app.run()

мой файл конфигурации VirtualHost:

<VirtualHost *:80>
        ServerName example.com
        ServerAdmin admin@example.com


        WSGIScriptAlias / /var/www/www-root/data/api1/SplitApp/App/flaskapp.wsgi
        <Directory /var/www/www-root/data/api1/SplitApp/App/>
            Order allow,deny
            Allow from all
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Это нормально работает на моем веб-сервере.

Но если я изменю свой init.py на это:

from flask import Flask
from spleeter.separator import Separator #adding this module from conda env

app = Flask(__name__)
@app.route("/")
def hello():
    return 'OK'
if __name__ == "__main__":
    app.run()

Я получаю ошибку 500 сейчас

Я предполагаю, что мне нужно добавить ссылку на conda env1, но я не могу найти полное решение, как это сделать для conda, только для virtualenv.

Есть ли какое-либо решение для этой проблемы? Извините, если мой вопрос слишком прост, но я новичок во всем этом:)

...