iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 24
1
Modern Web

用Python開發的網頁不能放到Github上?Lektor說可以!!系列 第 24

一條龍的服務,發布專案依舊不馬虎

接下來終於要進入正題了。前面介紹完Lektor基本功能後,也需要介紹部署到github的方法,不然怎麼符合一開始的目標呢!

在部署的時候有兩個步驟,第一個為build,再來才是deploy。要注意的是,我們要發佈到伺服器,提供給使用者看的網頁,是經過build後的網頁,如果將專案資料直接deploy上去,這樣伺服器也無法存取網頁,只會是專案資料備份而已

build

lektor預設生成的靜態網頁檔案,會存在tmp資料夾中,如果想要知道輸出的位置,可以使用以下指令:

$ lektor project-info --output-path

或是你也可以在執行指令時,指定生成資料夾位置:

$ lektor build --output-path my-folder

如此一來生成的網站檔案就會放在同目錄下的my-folder中。

Lektor小幫手

懶得打那麼多字?沒關係,Lektor幫你!!只要在.lektorproject檔案中設定好部署的路徑,接下來便輕輕鬆鬆~

[servers.production]
name = Production
enabled = yes
default = yes
target = rsync://server/path/to/folder

首先設定servers的名稱,也就是servers.xxxxxxxxxx,如上範例就是production。檔案設定完後就可以直接使用lektor deploy production進行部署,是不是很方便啊!甚至作為預設伺服器,可以直接省略名稱,執行lektor deploy就行!!

當然,要注意的是,這邊的deploy是不會進行build動作。所以如果你修改的內容沒有完成build,那部署上去的就只會是最後一次執行build的進度而已喔!

$ lektor build && lektor deploy

教練,我想自己來

沒問題,以下為部署到Amazon S3的指令:

$ lektor build && s3cmd sync "$(lektor project-info --output-path)"/* "s3://my-bucket/some/path"

說好的github呢

除了上述的方法以外,lektor也提供了FTP、Github Pages、GitLab Pages、rsync、Travis-CI等部署方法,將在下一篇開始一系列的介紹。

團隊系列文

CSScoke - 金魚都能懂的這個網頁畫面怎麼切 - 金魚都能懂了你還怕學不會嗎
King Tzeng - IoT沒那麼難!新手用JavaScript入門做自己的玩具~
Hina Hina - 陣列大亂鬥
阿斬 - Python 程式交易 30 天新手入門
Clarence - LINE bot 好好玩 30 天玩轉 LINE API
塔塔默 - 用Python開發的網頁不能放到Github上?Lektor說可以!!
Vita Ora - 好 Js 不學嗎 !? JavaScript 入門中的入門。


上一篇
Lektor強身健骨丸,建構你的強大model觀
下一篇
古董級的傳輸協定!FTP部署方法
系列文
用Python開發的網頁不能放到Github上?Lektor說可以!!31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言