gpt4 book ai didi

flask - 从Docker容器公开WSGI应用

转载 作者:行者123 更新时间:2023-12-02 18:57:21 25 4
gpt4 key购买 nike

我有一个在Google Compute Engine上运行的VM,该VM托管由Apache / WSGI服务的Flask应用程序。必须通过www.my_application.com在Internet上访问此应用程序。

在Docker容器中时,通过WSGI公开应用程序的最佳方法是什么?

  • 是否有要使用的特定docker run命令?
  • 是否需要修改my_application.conf
  • 还有其他需要知道/要做的事情吗?

  • 以下是 my_application.conf:
    <VirtualHost *:80>
    ServerName www.my_application.com

    WSGIDaemonProcess my_application user=www-data group=www-data threads=5
    WSGIScriptAlias / /var/www/my_application/application.wsgi
    ErrorLog /var/log/my_application.log

    <Directory /var/www/my_application>
    WSGIProcessGroup my_application
    WSGIApplicationGroup %{GLOBAL}
    Order deny,allow
    Allow from all
    </Directory>
    </VirtualHost>

    最佳答案

    这可能与您无关,但我制作了一个公开的(开源的)Docker镜像,其中包含可用于构建Python Flask Web应用程序的所有细节。

    它具有用于运行应用程序的uWSGI,用于HTTP的Nginx和用于控制HTTP的Supervisord,因此您不必学习如何安装和配置所有程序来构建Python Flask Web应用程序。

    而且Google Compute Engine可以运行Docker:https://cloud.google.com/compute/docs/containers

    带有Nginx的uWSGI似乎是部署Python Web应用程序的更健壮(且性能卓越)的方法之一。这里是基准:http://nichol.as/benchmark-of-python-web-servers

    您甚至可以使用一些模板项目来引导自己的模板项目。而且,您不必克隆整个项目或其他内容,只需将其用作基本镜像即可。

    Docker Hub:https://hub.docker.com/r/tiangolo/uwsgi-nginx-flask/

    GitHub上的https://github.com/tiangolo/uwsgi-nginx-flask-docker

    关于flask - 从Docker容器公开WSGI应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27634583/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com