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)
以上代碼會創(chuàng)建一個基本的 Web 服務(wù)器,并監(jiān)聽** 8080
** 端口。
2. 將應(yīng)用容器化
在項目根目錄下,創(chuàng)建一個名為 ** Dockerfile
** 的文件,內(nèi)容如下:
# 使用官方 Python 輕量級鏡像
# 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
# 啟動 Web 服務(wù)
# 這里我們使用了 gunicorn 作為 Server,1 個 worker 和 8 個線程
# 如果您的容器實例擁有多個 CPU 核心,我們推薦您把線程數(shù)設(shè)置為與 CPU 核心數(shù)一致
CMD exec gunicorn --bind :8080 --workers 1 --threads 8 --timeout 0 main:app
添加一個 ** .dockerignore
** 文件,以從容器映像中排除文件:
Dockerfile
README.md
*.pyc
*.pyo
*.pyd
__pycache__
.pytest_cache
3.部署到 CloudBase 云托管
你可以選擇任何云服務(wù)商的云開發(fā)服務(wù),這里我選擇了騰訊云的CloudBase云托管服務(wù)。
在 云托管控制臺 的服務(wù)列表頁面,選擇對應(yīng)的環(huán)境,單擊【新建服務(wù)】:
https://console.cloud.tencent.com/tcb/service
填寫新建服務(wù)所需的所有信息默認使用系統(tǒng)推薦的配置即可。
單擊【提交】,如果部署成功,便可以看到如下彈框:
單擊【新建版本】可立刻開始新建版本并部署,在這里我們選擇本地代碼,將剛剛寫好的文件夾打包為zip文件并上傳,端口改為 ** 8080
** ,流量策略改為 ** 部署完成后自動開啟100%流量
** ,其他配置默認即可:
PS: **hello-cloud-develop.zip
**可在 Python實用寶典 公眾號后臺回復:云開發(fā) 下載
當然,你也可以選擇其他的拉取代碼方式,比如代碼庫或者Docker鏡像,按需選擇即可。點擊開始部署將代碼倉庫部署為線上服務(wù)。
狀態(tài)變成正常說明部署成功。
4.訪問網(wǎng)站
部署成功后就可以訪問網(wǎng)站了,進入服務(wù)配置,找到公網(wǎng)域名:
這個公網(wǎng)域名就是我們部署網(wǎng)站的地址,訪問這個公網(wǎng)域名,出現(xiàn)下面頁面效果,說明部署成功:
恭喜!你已經(jīng)成功通過云開發(fā)部署一個網(wǎng)站了,準確來講是云托管服務(wù)。這種部署方式實在非常舒服,無需自建服務(wù)器、成本降低、運維省事。
那些簡單的個人網(wǎng)站、官方網(wǎng)站或者論壇,我認為都可以用云托管的形式去部署,能夠大大節(jié)省投入成本,站長們可以嘗試一下。
-
文件
+關(guān)注
關(guān)注
1文章
579瀏覽量
25376 -
代碼
+關(guān)注
關(guān)注
30文章
4900瀏覽量
70772 -
python
+關(guān)注
關(guān)注
56文章
4827瀏覽量
86796 -
鏡像
+關(guān)注
關(guān)注
0文章
178瀏覽量
11252 -
Web應(yīng)用
+關(guān)注
關(guān)注
0文章
16瀏覽量
3606
發(fā)布評論請先 登錄
是否可以使用OpenVINO?部署管理器在部署機器上運行Python應(yīng)用程序?
為什么Python Web流行度不如PHP?
五大Python Web框架詳解
Python爬蟲與Web開發(fā)庫盤點
專業(yè)python web編程工具
本地搭建Python Web的開發(fā)測試環(huán)境過程詳解
Python在web應(yīng)用實現(xiàn)部署的協(xié)議與實現(xiàn)協(xié)議的工具解析
python的web部署方式大全!

使用Python和Flask開發(fā)一個Web程序
Flask Web開發(fā)基于Python的Web應(yīng)用開發(fā)實戰(zhàn)電子書

安利5個流暢自如的Python Web框架
如何使用Python和Web設(shè)計一個水資源的監(jiān)測系統(tǒng)

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

評論