0

我有一项服务,我通过 docker-compose 运行 gunicorn。gunicorn 开始的部分是 .yml 文件中的以下行:

my-service:
    command: gunicorn my-service.wsgi:application --name=my-service --timeout=50 --workers=5 --bind=0.0.0.0:8080 --pythonpath=/my-service 

我的想法是停止使用 gunicorn 并继续使用 bjoern。有人可以帮助我修改我应该修改的内容吗?

非常感谢您的关注。

4

1 回答 1

0

我正在使用烧瓶来服务我的应用程序。我正在使用会话池连接 oracle 19c 数据库。我的 wsgi 服务器是 bjoern。它在 Ubuntu 20.04 上运行得非常快。我不是专家,但也许这会给你一些想法。

我的 Dockerfile 是这样的:

# syntax=docker/dockerfile:1

FROM python:3.9.9-buster

WORKDIR /opt/oracle

RUN apt-get update && apt-get install -y libaio1 wget unzip \
    && wget https://download.oracle.com/otn_software/linux/instantclient/1913000/instantclient-basic-linux.x64-19.13.0.0.0dbru.zip \
    && unzip instantclient-basic-linux.x64-19.13.0.0.0dbru.zip \
    && rm -f instantclient-basic-linux.x64-19.13.0.0.0dbru.zip \
    && cd /opt/oracle/instantclient* \
    && rm -f *jdbc* *occi* *mysql* *README *jar uidrvci genezi adrci \
    && echo /opt/oracle/instantclient* > /etc/ld.so.conf.d/oracle-instantclient.conf \
    && ldconfig

RUN apt-get install -y libev-dev
RUN apt-get install -y build-essential
RUN pip3 install flask
RUN pip3 install cx-Oracle
RUN pip3 install bjoern
RUN pip3 install Flask-HTTPAuth


WORKDIR /sapsrv

COPY . .

EXPOSE 5001

CMD ["python3", "srv.py"]

我的 srv.py 就像:

from flask import Flask, jsonify, make_response
import bjoern
import cx_Oracle

app = Flask(__name__)

if __name__=="__main__":
    bjoern.run(app, "0.0.0.0", 5001)
于 2021-12-09T08:46:41.150 回答