Как я могу запустить Flask и gunicorn / uwsgi на Raspberry Pi - PullRequest
0 голосов
/ 05 марта 2019

У меня есть приложение Flask, которое работает в виртуальной среде на Raspberry Pi. Приложение потоковое видео с Picamera и может получать некоторые другие запросы. Приложение работает, как и ожидалось, используя python run.py. Я хочу настроить приложение на автоматический запуск после перезагрузки и использовать не встроенный сервер Flask. Я попробовал Gunicorn и UWSGI. Однако запуск gunicorn вызывает ошибку CRITICAL WORKER TIMEOUT (возможно, из-за загрузки модели keras в файл process_stream.py), а также запуск uswgi также завершается неудачно, но без каких-либо ошибок (рабочий процесс появляется, но камера не возвращает никаких кадров). Кто-нибудь может поделиться некоторыми советами по этой ситуации?

run.py файл:

from app import app, processing_stream

if __name__ == "__main__":
    processing_stream.start()
    app.run(host='0.0.0.0', use_reloader=False)

app.py file:

import io
import os
import cv2

from flask import Flask, request, Response, render_template, send_file
from PIL import Image

from process_stream import ProcessStream


app = Flask(__name__)
app.config.from_object(os.environ['APP_SETTINGS'])

processing_stream = ProcessStream()


@app.route('/')
def index():
    """Video streaming"""
    return render_template('index.html')

# some functions to retrieve information

def gen():
    while processing_stream.running:
        # yield frame

@app.route('/video_feed')
def video_feed():
    return Response(gen(),
                    mimetype='multipart/x-mixed-replace; boundary=frame')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...