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)維省事。
那些簡(jiǎn)單的個(gè)人網(wǎng)站、官方網(wǎng)站或者論壇,我認(rèn)為都可以用云托管的形式去部署,能夠大大節(jié)省投入成本,站長(zhǎng)們可以嘗試一下。
-
文件
+關(guān)注
關(guān)注
1文章
567瀏覽量
24762 -
代碼
+關(guān)注
關(guān)注
30文章
4791瀏覽量
68694 -
python
+關(guān)注
關(guān)注
56文章
4797瀏覽量
84755 -
鏡像
+關(guān)注
關(guān)注
0文章
166瀏覽量
10759 -
Web應(yīng)用
+關(guān)注
關(guān)注
0文章
16瀏覽量
3494
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論