【问题标题】:Deploying from Django/Python3 to Google Compute Engine Managed VM从 Django/Python3 部署到 Google Compute Engine Managed VM
【发布时间】:2016-03-25 19:09:06
【问题描述】:

我是云开发的新手,在网上阅读后,我认为这个问题没有得到解答。

我有一个使用 Django (written in python3)bootstrap 的程序。
我已经为这个程序工作了一段时间,我认为我已经为部署做好了充分的准备。 em>

我正在使用Google Cloud/Google Compute Engine 来部署这个应用程序。我非常清楚Django 的网络服务器不是为部署而设计的,据说最好的解决方案是使用mod_wsgi。因此,我设置了一个local VM,它使用Apachemod_wsgi 为应用程序提供服务。

我已经决定是时候部署应用程序了,但我不确定我想要采取的方向是否可行
据我了解,在我看来,Google Cloud 的托管 VM 似乎比未解锁的 VM 具有更大的优势。但是,我很清楚 GCE 的局限性以及托管 VM 应该如何使用熟悉的运行时或自定义 docker 映像。

然而,我不确定将我的 mod_wsgi 应用程序部署所需的确切步骤Django 构建到GCE

  • 托管VMs中的apache环境是否支持mod_wsgi

  • 我是否必须使用多个runtimes/docker 图像来实现这一点?

  • 最好只使用click-to-deploy 映像之一或自定义映像来部署此应用程序,而不使用托管VMs

    李>

澄清一下,我使用的 apache、Django 和 python 都是最新版本。

【问题讨论】:

    标签: django apache google-app-engine python-3.x google-compute-engine


    【解决方案1】:

    使用托管 VM custom runtime 可以实现您想要做的事情。这基本上意味着您为您的应用程序提供您自己的自定义Dockerfile,并使用它可以指定您想要的任何基本 docker 映像并安装您需要的任何其他依赖项(例如,通过 pip 或 apt-get)。例如,您可以使用 google/python base image 并使用 apt-get 在 Dockerfile 中安装 apache 和 mod_wsgi,或者只使用 already has apache and mod_wsgi 为您设置的基础镜像。

    可能首先要做的最好的事情是运行 Python Hello World tutorial,因为在它结束时,您将确切地看到 Docker 如何与托管 VM 相关联,以及按照您的方式设置 Dockerfile 所需的语法想要。

    【讨论】:

      【解决方案2】:

      这仍然是一个没有很多好的答案的问题,如果有的话,堆栈溢出。具有讽刺意味的是,我从使用数字海洋的教程How To Serve Django Applications with Apache and mod_wsgi on Ubuntu 16.04 中获得了最大的好处,它基本上会引导您从头开始进行设置。我有一个运行 Ubuntu 16.04 的本地 VM,所以我能够通过两次,一次是在实践中,然后是在云中,这绝对帮助我相对较快地克服了一些障碍。

      作为部署的一部分,我还将审核 Django Security Settings 的生产环境。

      【讨论】:

      • 链接死了 - 所以没有。把它带到这里来。
      猜你喜欢
      • 1970-01-01
      • 2017-09-04
      • 1970-01-01
      • 2020-01-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-22
      • 1970-01-01
      相关资源
      最近更新 更多