輕鬆架一套類 IFTTT 的自動化工作流「n8n」

​ 應該不少人都有玩過 IFTTT 的服務,可以建立起非常強大且方便的自動化工作流 它的主要原理跟工作流程是「如果 OOO 變成 YYY 以後,就進行 XXX 的動作」 舉例來說可以是「如果明天天氣預報會下雨,就發簡訊或者郵件通知我」、「如果收到某人訊息,就加到重要代辦事項」等等 IFTTT 目前可以免費試用,最多開三個 Applets,且每個 Applets 檢查更新頻率在一小時 如果你想要解除限制的話,就需要訂閱他們的 IFTTT Pro 服務,可以享有無限 Applets 且每五分鐘就能更新一次的服務 ​ 不過今天要介紹的是另外一款有類似功能的工具 n8n,支援的服務也相當多 而且是免費開源,也能自己架設在自己伺服器上,甚至可以跑自己寫的腳本,所以可自定義性更強,相當的不錯 ​ n8n 介紹影片: ​ 前段時間我自己也架了一套出來玩玩,觀察幾天運作相當穩定,所以寫一篇記錄一下 不過因為 n8n 自定義功能強大,玩法相當多,無法靠三言兩語講完,所以這篇只會有 RSS to Telegram 的例子 其他部分留待自己開發出更適合你自身的玩法 😚 大概流程分為以下兩部分: 使用 Docker 快速建立一套開箱即用 n8n 監測某 RSS Feed 出現關鍵字時,用 Telegram 私訊通知你,或者發送到某 Telegram 群組 or 頻道裡面 ​ Docker 安裝 n8n Docker 的執行環境請參考其他文章,或者有些人喜歡安裝在 NAS 裡面也可以 而 n8n 的 Docker 版本也相當簡單,沒有太多什麼需要額外設定的選項,我們只要先建立一個資料夾給 n8n 放資料庫即可...

September 16, 2021 · 4 min · jkgtw

WordPress 搬家 Hugo 的記錄與設定

​ 前兩天終於成功從 WordPress 切換到全靜態網站的 Hugo,切換過程還算順利 切換之後有發現 Telegram 留言板跟 RSS 輸出有點問題,就趕快動手調整一下 Telegram 留言板目前還太陽春,有人在文章下面留言,我居然不會收到通知,忍痛棄用 還是換上 Disqus 的留言板,缺點就是免費版會有個性化廣告投放與追蹤 如果不想要有太個人化的追蹤可以點留言板下面的「Do Not Sell My Data」,然後跳到他們網頁按下「Opt Out」即可 ​ ​ RSS 的部分我來來回回在 Hugo 說明書跟設定檔案調整與測試,目前也算是可以正常全文輸出 整個新站上線之後,大致還算穩定,因為少掉資料庫與 php 等等其他依賴,系統消耗少很多,速度提升整個 up up 以下簡單記錄一下這次 WordPress to Hugo 搬家的過程~ ​ ​ Hugo 環境安裝 macOS 上面安裝非常簡單,如果你有安裝 HomeBrew 的話,只需要一行指令即可完成安裝 $ brew install hugo ​ 安裝完畢後,也只要一行指令即可完成一個簡單網站基礎設定檔與資料夾 $ hugo new site mynewsite ​ 接著切換到該資料夾裡面,即可看見 Hugo 幫你自動建好 config、themes、layouts、content。。等等 再來就是去挑一個你喜歡的主題,Hugo 官網有列出很多但不是全部,我目前選的是 LoveIt 功能非常多,多語系、說明書詳細、可客製化程度高且支援 Darkmode 自動切換。。等等 主題的作者維護也非常勤勞,且最近也積極聽取使用者反饋的建議修改以及增加功能 只要依照 Hugo 說明書跟主題設定檔案,隨著你自己的環境逐條設定過去就可以,整體難度不是很高~...

March 21, 2020 · 2 min · jkgtw

準備從 WordPress 搬到 Hugo 的全靜態網頁

​ 用 WordPress 已經用好幾年了,WordPress 主題跟外掛資源多多,大概你想要的功能大部分都有人寫好了 初期建立時候我還買了幾套佈景主題跟外掛,我安裝的外掛數量應該也算普普通通?最多時候有裝到二十多個 後來精簡到十五個左右,如果再極端一點可以縮到十個左右 雖然 WordPress 這種 CMS 架構非常強大,但缺點就是跟 Windows 系統一樣本體隨著時間越用越腫了。。。 ​ ​ 另外就是 CMS 動態網頁的最佳化實在有夠難,有數據庫、php 然後又有 html + css + js,對於我這種非網頁工程師 看到 Google PageSpeed Insights 分數低,就算看著谷歌給的優化建議,也還是無從下手,而感到無力。。。 但是不可否認 CMS 架構在搭建、使用跟訪客交互上有明顯優勢 ​ 後來偶然在某個網頁看見介紹 Hugo,可以使用 Markdown 的寫作方式,讓 Hugo 快速渲染出全靜態的網頁 因為是全靜態網頁,沒有數據庫之類需要資料查詢、傳送。。等等,所以整體網站的加載速度會超快! 而靜態網頁本體缺少與訪客交互的功能,像是每篇文章底下的留言板,但這個留言功能也有外掛來實現 看到 Hugo 社群比較多人用的第三方留言板有 Disqus 或者 Facebook 留言,這些都能被無縫整合到 Hugo 裡面 ​ 所以前幾個禮拜沒有考慮太多,就用著閒餘時間慢慢看看與摸索 Hugo 的說明文件 再挑了一個開發活躍且看的順眼的簡約主題,終於在前幾天把大部分資料都順利轉換成 Hugo 了~ ​ 再來說說目前部落格從 WordPress 切換過去 Hugo 之後的損失 比較明顯的就是目前所有留言都無法搬過去,因為都是存在伺服器本地上的資料庫 Hugo 全靜態架構沒有數據庫的存在,所以只能全部放棄,之後會採用 Telegram Comment Bot 的留言板(?)...

March 19, 2020 · 1 min · jkgtw

完全 Docker 化搭建 FreshRSS + Traefik 反向代理

​ Docker 真的是一個越用越上癮的應用,目前我在效能可以勝任的時候都會盡量 Docker 化 隨便亂搞一通,壞掉了就刪掉,重新再啓動一個容器又能繼續玩~ 不會因為手賤搞砸了某東西就影響到整台機器的系統,備份跟搬家也是輕輕鬆鬆~ 上次介紹的 Minflux + RSSHub 與 Caddy 反向代理搭配,可以很快搭出一套屬於你自己的 RSS 閱讀器 今天來介紹另外一種也是很夯的反向代理與負載平衡服務「Traefik」,特點是 Go 語言與 Docker 深度結合 這篇就來搭配使用搭建另外一套開源的 FreshRSS 閱讀器吧! ​ 他就像一個交通警察在路口指揮交通~ 如果你跑許多應用跟服務,Traefik 可以輕鬆的幫你管理網路應該怎麼走不塞車 而且 Traefik 可以做到類似熱插拔的功能,不需要關閉甚至重新啟動任何服務 只要新增新服務時候貼上對應標籤,Traefik 會自動接管並啓動,完全不影響內部其他服務 ​ ​ Traefik 設定與啓動 廢話不多說,在裝好 Docker 環境以後,我們就可以開始設定 Traefik # 先在 Docker 內部建立一個專屬網路 $ docker network create reverse-proxy ​ 接著建立安裝會需要用到的資料夾與 docker-compose 設定檔 # traefik 會放 docker-compose, certs 會放自動申請的 SSL 憑證 $ mkdir ~/traefik && mkdir ~/traefik/certs && cd ~/traefik $ nano docker-compose....

March 10, 2020 · 3 min · jkgtw

Docker 快速搭建 Miniflux + RSSHub

​ 最近群裡面熱鬧許多,有些原因是不少人都開到終身免費的 Oracle Cloud 虛擬機 開始想著在虛擬機裡面安裝各種應用,像是之前說到的 Outline,還有皮樂大大寫的 v2ray + MTProxy 今天來講講 RSS 閱讀器的搭建,之前有介紹過 Miniflux 的安裝,不過搭建起來比較麻煩 對於新手來說步驟有點多,安裝過程只要有一個步驟錯誤就常常不知所措 所以還是來個 Docker 快速版本吧,也順便把超好用萬物皆可 RSS 化的 RSSHub 一起打包進去~ ​ ​ Docker Community 穩定版安裝 首先 SSH 連到伺服器裡面,先從安裝 Docker 跟所需軟體開始 # 先完整更新一下系統 $ sudo apt update && sudo apt full-upgrade -y # 安裝一下等下會需要用到的軟體 $ sudo apt install nano curl wget libcap2-bin -y ​ 接下來使用官方 Get Docker 自動安裝的腳本 $ curl -fsSL https://get.docker.com/ | sh 以上一條指令輸入完,稍等片刻就自動完成 Docker 安裝 安裝完 Docker 以後,我們設定一下 Docker 權限,將自己帳號新增到 Docker 群組裡面...

March 6, 2020 · 4 min · jkgtw