三分钟部署Python Web应用,云开发了解一下?

    作者:匿名更新于: 2023-02-11 22:02:35

      本文通过介绍使用云托管服务,教大家如何尽可能减免部署难度,减轻负担。

      新手在平时开发Web应用时,由于对Linux系统的不熟悉,往往会遇到一些部署上的难题。

      本文通过介绍使用云托管服务,教大家如何尽可能减免部署难度,减轻负担。

      1. 编写基础应用

      创建名为 helloworld 的新目录,并转到此目录中:

      复制

      1.  mkdir hello-cloud-develop

      2.  cd hello-cloud-develop

      创建名为 main.py 的文件,并将以下代码粘贴到其中:

      复制

      1.  import os

      2.  from flask import Flask

          3.

      4.  app = Flask(__name__)

          5.

          6.

      7.  @app.route('/')

      8.  def hello_world():

      9.  return 'Hello World!'

         10.

      11.  if __name__ == "__main__":

      12.  app.run(debug=True, host='0.0.0.0', port=8080)

      以上代码会创建一个基本的 Web 服务器,并监听 8080 端口。

      2. 将应用容器化

      在项目根目录下,创建一个名为 Dockerfile 的文件,内容如下:

      复制

      1.  # 使用官方 Python 轻量级镜像

      2.  # https://hub.docker.com/_/python

      3.  FROM python:3.8-slim

      4.  # 将本地代码拷贝到容器内

      5.  ENV APP_HOME /app

      6.  WORKDIR $APP_HOME

      7.  COPY . ./

      8.  # 安装依赖

      9.  RUN pip install Flask gunicorn

      10.  # 启动 Web 服务

      11.  # 这里我们使用了 gunicorn 作为 Server,1 个 worker 和 8 个线程

      12.  # 如果您的容器实例拥有多个 CPU 核心,我们推荐您把线程数设置为与 CPU 核心数一致

      13.  CMD exec gunicorn --bind :8080 --workers 1 --threads 8 --timeout 0 main:app

      添加一个 .dockerignore 文件,以从容器映像中排除文件:

      复制

      1.  Dockerfile

      2.  README.md

      3.  *.pyc

      4.  *.pyo

      5.  *.pyd

      6.  __pycache__

      7.  .pytest_cache

      3.部署到 CloudBase 云托管

      你可以选择任何云服务商的云开发服务,这里我选择了腾讯云的CloudBase云托管服务。

      在 云托管控制台 的服务列表页面,选择对应的环境,单击【新建服务】:https://console.cloud.tencent.com/tcb/service

      填写新建服务所需的所有信息默认使用系统推荐的配置即可。

      单击【提交】,如果部署成功,便可以看到如下弹框:

      单击【新建版本】可立刻开始新建版本并部署,在这里我们选择本地代码,将刚刚写好的文件夹打包为zip文件并上传,端口改为 8080​ ,流量策略改为 部署完成后自动开启100%流量 ,其他配置默认即可:

      PS: hello-cloud-develop.zip 可在 Python实用宝典 公众号后台回复:云开发 下载

      当然,你也可以选择其他的拉取代码方式,比如代码库或者Docker镜像,按需选择即可。点击开始部署将代码仓库部署为线上服务。

      状态变成正常说明部署成功。

      4.访问网站

      部署成功后就可以访问网站了,进入服务配置,找到公网域名:

      这个公网域名就是我们部署网站的地址,访问这个公网域名,出现下面页面效果,说明部署成功:

      恭喜!你已经成功通过云开发部署一个网站了,准确来讲是云托管服务。这种部署方式实在非常舒服,无需自建服务器、成本降低、运维省事。

      那些简单的个人网站、官方网站或者论坛,我认为都可以用云托管的形式去部署,能够大大节省投入成本,站长们可以尝试一下。

      来源: Python实用宝典

        >>>>>>点击进入计算专题

    标签: PythonWeb应用
云计算 更多推荐

课课家教育

未登录