0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何部署Python Web應(yīng)用

科技綠洲 ? 來源:Python實(shí)用寶典 ? 作者:Python實(shí)用寶典 ? 2023-11-01 09:32 ? 次閱讀

1. 編寫基礎(chǔ)應(yīng)用

創(chuàng)建名為** helloworld **的新目錄,并轉(zhuǎn)到此目錄中:

mkdir hello-cloud-develop
cd hello-cloud-develop

創(chuàng)建名為 ** main.py ** 的文件,并將以下代碼粘貼到其中:

import os
from flask import Flask

app = Flask(__name__)


@app.route('/')
def hello_world():
    return 'Hello World!'
  
if __name__ == "__main__":
    app.run(debug=True, host='0.0.0.0', port=8080)

以上代碼會(huì)創(chuàng)建一個(gè)基本的 Web 服務(wù)器,并監(jiān)聽** 8080 ** 端口。

2. 將應(yīng)用容器化

在項(xiàng)目根目錄下,創(chuàng)建一個(gè)名為 ** Dockerfile ** 的文件,內(nèi)容如下:

# 使用官方 Python 輕量級(jí)鏡像
# https://hub.docker.com/_/python
FROM python:3.8-slim
# 將本地代碼拷貝到容器內(nèi)
ENV APP_HOME /app
WORKDIR $APP_HOME
COPY . ./
# 安裝依賴
RUN pip install Flask gunicorn
# 啟動(dòng) Web 服務(wù)
# 這里我們使用了 gunicorn 作為 Server,1 個(gè) worker 和 8 個(gè)線程
# 如果您的容器實(shí)例擁有多個(gè) CPU 核心,我們推薦您把線程數(shù)設(shè)置為與 CPU 核心數(shù)一致
CMD exec gunicorn --bind :8080 --workers 1 --threads 8 --timeout 0 main:app

添加一個(gè) ** .dockerignore ** 文件,以從容器映像中排除文件:

Dockerfile
README.md
*.pyc
*.pyo
*.pyd
__pycache__
.pytest_cache

3.部署到 CloudBase 云托管

你可以選擇任何云服務(wù)商的云開發(fā)服務(wù),這里我選擇了騰訊云的CloudBase云托管服務(wù)。

在 云托管控制臺(tái) 的服務(wù)列表頁面,選擇對(duì)應(yīng)的環(huán)境,單擊【新建服務(wù)】:
https://console.cloud.tencent.com/tcb/service

填寫新建服務(wù)所需的所有信息默認(rèn)使用系統(tǒng)推薦的配置即可。

圖片

單擊【提交】,如果部署成功,便可以看到如下彈框:圖片

單擊【新建版本】可立刻開始新建版本并部署,在這里我們選擇本地代碼,將剛剛寫好的文件夾打包為zip文件并上傳,端口改為 ** 8080 ** ,流量策略改為 ** 部署完成后自動(dòng)開啟100%流量 ** ,其他配置默認(rèn)即可:

圖片

PS: **hello-cloud-develop.zip **可在 Python實(shí)用寶典 公眾號(hào)后臺(tái)回復(fù):云開發(fā) 下載

當(dāng)然,你也可以選擇其他的拉取代碼方式,比如代碼庫或者Docker鏡像,按需選擇即可。點(diǎn)擊開始部署將代碼倉庫部署為線上服務(wù)。

圖片

狀態(tài)變成正常說明部署成功。

4.訪問網(wǎng)站

部署成功后就可以訪問網(wǎng)站了,進(jìn)入服務(wù)配置,找到公網(wǎng)域名:

圖片

這個(gè)公網(wǎng)域名就是我們部署網(wǎng)站的地址,訪問這個(gè)公網(wǎng)域名,出現(xiàn)下面頁面效果,說明部署成功:

圖片

恭喜!你已經(jīng)成功通過云開發(fā)部署一個(gè)網(wǎng)站了,準(zhǔn)確來講是云托管服務(wù)。這種部署方式實(shí)在非常舒服,無需自建服務(wù)器、成本降低、運(yùn)維省事。

那些簡單的個(gè)人網(wǎng)站、官方網(wǎng)站或者論壇,我認(rèn)為都可以用云托管的形式去部署,能夠大大節(jié)省投入成本,站長們可以嘗試一下。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 文件
    +關(guān)注

    關(guān)注

    1

    文章

    556

    瀏覽量

    24642
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4697

    瀏覽量

    68096
  • python
    +關(guān)注

    關(guān)注

    54

    文章

    4759

    瀏覽量

    84295
  • 鏡像
    +關(guān)注

    關(guān)注

    0

    文章

    159

    瀏覽量

    10679
  • Web應(yīng)用
    +關(guān)注

    關(guān)注

    0

    文章

    16

    瀏覽量

    3464
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    為什么Python Web流行度不如PHP?

    的地方。  Python 的強(qiáng)大之處在于語言的簡潔與優(yōu)雅,以及它強(qiáng)大的表達(dá)能力。Hacker 們?cè)敢馐褂?Python 來作為他們表達(dá)思維的方式?! ≡?Web 開發(fā)上面,Python
    發(fā)表于 12-02 16:34

    五大Python Web框架詳解

    Python是一門優(yōu)雅的編程語言,被廣泛應(yīng)用在Web開發(fā)、游戲開發(fā)、人工智能、云計(jì)算開發(fā)、大數(shù)據(jù)開發(fā)、數(shù)據(jù)分析、科學(xué)運(yùn)算、爬蟲、自動(dòng)化運(yùn)維、自動(dòng)化測(cè)試等領(lǐng)域,Python在各領(lǐng)域的應(yīng)用最方便的就是
    發(fā)表于 02-06 17:17

    Python爬蟲與Web開發(fā)庫盤點(diǎn)

    Python爬蟲和Web開發(fā)均是與網(wǎng)頁相關(guān)的知識(shí)技能,無論是自己搭建的網(wǎng)站還是爬蟲爬去別人的網(wǎng)站,都離不開相應(yīng)的Python庫,以下是常用的Python爬蟲與
    發(fā)表于 05-10 15:21

    專業(yè)python web編程工具

    還自帶服務(wù)器。其它方面,Python擁有足夠多的免費(fèi)數(shù)據(jù)函數(shù)庫、免費(fèi)的Web網(wǎng)頁模板系統(tǒng)、還有與Web服務(wù)器進(jìn)行交互的庫、這些都可以設(shè)計(jì)到你的Web應(yīng)用程序里面。在這篇文章里,我們將為
    發(fā)表于 06-12 16:23

    web項(xiàng)目之server部署路徑

    web項(xiàng)目的server部署路徑
    發(fā)表于 05-11 07:00

    本地搭建Python Web的開發(fā)測(cè)試環(huán)境過程詳解

    最近想嘗試一下在IBM Bluemix上使用Python語言創(chuàng)建Web應(yīng)用程序,所以需要在本地搭建Python Web的開發(fā)測(cè)試環(huán)境。 關(guān)于Pyth
    發(fā)表于 12-12 08:50 ?4877次閱讀

    Pythonweb應(yīng)用實(shí)現(xiàn)部署的協(xié)議與實(shí)現(xiàn)協(xié)議的工具解析

    php的正式環(huán)境部署非常簡單,改幾個(gè)文件就OK,用FastCgi方式也是分分鐘的事情。相比起來,Pythonweb應(yīng)用上的部署就繁雜的多,主要是工具繁多,主流服務(wù)器支持不足,在了解
    的頭像 發(fā)表于 02-09 09:26 ?5005次閱讀

    pythonweb部署方式大全!

    Python Web服務(wù)器網(wǎng)關(guān)接口(Python Web Server Gateway Interface,縮寫為WSGI)是為Python
    的頭像 發(fā)表于 05-05 17:20 ?3119次閱讀
    <b class='flag-5'>python</b>的<b class='flag-5'>web</b><b class='flag-5'>部署</b>方式大全!

    基于PythonWeb應(yīng)用開發(fā)實(shí)戰(zhàn)PDF電子書免費(fèi)下載

    分則給出一個(gè)實(shí)例,真正帶領(lǐng)大家一步步開發(fā)完整的博客和社交應(yīng)用 Flasky,從而將前述知識(shí)融會(huì)貫,付諸實(shí)踐。第三部分介紹了發(fā)布應(yīng)用之前必須考慮的事項(xiàng),如單元測(cè)試策略、性能分析技術(shù)、Flask 程序的部署方式等。本書適合熟悉 Python 編程,有意通過 Flask 全面掌
    發(fā)表于 10-28 08:00 ?3次下載

    使用Python和Flask開發(fā)一個(gè)Web程序

    Flask 是一個(gè)使用 Python 語言編寫的 Web 框架,它可以讓你高效的編寫 Web 程序。Web 程序即“網(wǎng)站”或“網(wǎng)頁程序”,是指可以通過瀏覽器進(jìn)行交互的程序。我們?nèi)粘J褂?/div>
    發(fā)表于 02-28 08:00 ?0次下載

    Flask Web開發(fā)基于PythonWeb應(yīng)用開發(fā)實(shí)戰(zhàn)電子書

    本書共分三部分,全面介紹如何基于Python 微框架Flask進(jìn)行Web開發(fā)。第一部分是Flask簡介,介紹使用Flask框架及擴(kuò)展開發(fā)Web程序的必備基礎(chǔ)知識(shí);第二部分則給出一個(gè)實(shí)例,真正帶領(lǐng)大家
    發(fā)表于 03-11 08:00 ?1次下載
    Flask <b class='flag-5'>Web</b>開發(fā)基于<b class='flag-5'>Python</b>的<b class='flag-5'>Web</b>應(yīng)用開發(fā)實(shí)戰(zhàn)電子書

    安利5個(gè)流暢自如的Python Web框架

    如今,可供選擇的Python web框架有不少,能幫助你更快更輕松地創(chuàng)建web應(yīng)用。本文就將為大家介紹一些更現(xiàn)代、使用更廣泛的web框架。
    的頭像 發(fā)表于 07-02 17:15 ?2306次閱讀

    如何使用PythonWeb設(shè)計(jì)一個(gè)水資源的監(jiān)測(cè)系統(tǒng)

     簡要介紹了一種高效的開發(fā)工具Python功能和特點(diǎn),并介紹了利用Python開發(fā)基于Web的水資源監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)思路,系統(tǒng)構(gòu)成與軟件功能。把Python類包裝成com組件,在
    發(fā)表于 08-04 17:02 ?12次下載
    如何使用<b class='flag-5'>Python</b>和<b class='flag-5'>Web</b>設(shè)計(jì)一個(gè)水資源的監(jiān)測(cè)系統(tǒng)

    如何部署Python Web應(yīng)用

    本文通過介紹使用云托管服務(wù),教大家如何盡可能減免部署難度,減輕負(fù)擔(dān)。 1. 編寫基礎(chǔ)應(yīng)用 創(chuàng)建名為** helloworld **的新目錄,并轉(zhuǎn)到此目錄中: mkdir
    的頭像 發(fā)表于 10-16 11:48 ?729次閱讀
    如何<b class='flag-5'>部署</b><b class='flag-5'>Python</b> <b class='flag-5'>Web</b>應(yīng)用

    Python Web框架Django 5.0新特性

    根據(jù) JetBrains 公布的 2022 Python 開發(fā)者調(diào)查結(jié)果,Python Web 框架的三巨頭依舊是 Flask、Django 和 FastAPI。Django 和 Flask 的使用率排名并列第一。
    的頭像 發(fā)表于 12-06 13:37 ?1054次閱讀