Sitemap

如何在免費雲端部署 Python Flask 應用 ── 範例:將 Line bot 放上 Render!抽塔羅牌機器人!

部署 Python Flask / Python Flask with Render / Tarot daily fortune Line bot

Molly Chi
4 min readAug 21, 2024

✨先來葉配自己的機器人

我又寫了一個機器人,輸入文字【工作】【愛情】【今日運勢】【心理照護】,會收到當下抽到的小建議,資料是由 AI 提供,沒有任何可信度(?,純屬好玩 ㅇㅅㅇ

LINE: @578wnjfw

還有快速選單~~ (進階了(*´▽`*))

(這次一樣使用免費的 server,沒收到回覆的話表示額度已經用完…。)

✨ Render 可以做到哪些事情?

  • 可以架設寫好的 API
  • 部署前端網站
  • 支援 Node.js、Python、Ruby、Go、Django、Rails
  • 透過 Github Gitlab 進行 CI/CD
  • 排程任務
  • 當資料庫(PostgreSQL)

✨正文開始

主要會是提供步驟以及常遇到的問題

✨ 前置作業

✨ 建立專案

  • 打開 Github,建立一個空的 Repo
  • 將 Repo clone 下來,可以使用 git clone {URL} 的指令
  • 開始終端機,路徑為該資料夾
  • 在資料中新增檔案 app.py,放主程式
  • 新增 requirements.txt ,用於放所有需要的套件
  • 新增 .gitignore,放要忽略的檔案名稱

✨ 建立環境變數

如果專案有用到環境變數(密鑰、token 等),需要使用 load_dotenv 套件,並將密碼等放在.env檔案中,這裡不贅述。

from dotenv import load_dotenv
load_dotenv()

✨ 佈署到 Render

STEP 1:登入 Render,點擊「New +」,選擇 Web Service

STEP 2:連接 Github 帳號後,可以看到已授權的 Repo,(若無特別設定應該全部的 Repo 都會在這裡出現),點「Connect」

STEP 3✨:輸入專案名稱,其他的不需要調整,往下滑會看到 Start Command,請輸入 python app.py也就是你啟動專案的指令(用 fast api 的話會是別的,請參考這篇)

✨注意:在 app.py 中,啟動專案的 port 跟 host,需要設定app.run(host=”0.0.0.0", port=10000) 才符合 Render 的格式,我在這裡卡了好久( ´•̥̥̥ω•̥̥̥` )

app.run(host="0.0.0.0", port=10000)

STEP 4✨:由於我們有使用環境變數,需要在 Environment Variables 輸入有用到的變數值。

STEP 5✨:接著會自動部署,若是遇到問題,則將修改好的 code,push 到github,然後點 Render 專案中的 手動部署,就會再跑一次。

STEP 6✨:成功的話就會得到URL啦~~~

\ 完成 /

碎碎念

這周末要去玉山了,希望不要遇到下大雨或地震 (❁´ω`❁)

--

--

Molly Chi
Molly Chi

Written by Molly Chi

Software Developer / 職稱是軟體研發工程師。 什麼都寫,專精於前端及APP (ง•̀_•́)ง ! ❤ 合作發案討論疑難雜症請洽: momolly1024@gmail.com

Responses (1)