輕鬆架一套類 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 頻道裡面 ​ ...

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 說明書跟主題設定檔案,隨著你自己的環境逐條設定過去就可以,整體難度不是很高~ ​ 設定完畢後一個新的 Hugo 環境就全部完成,輸入下面指令 Hugo 會自動幫你新建一個符合你主題跟設定的 Markdown 檔案 ...

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 的留言板(?) 再來就是目前有使用 email 訂閱的,以後也無法主動發信通知,請改為 RSS 訂閱 這幾天再稍微把新主題的設定與細節調整一下,還有伺服器的 nginx 設定都重寫一下就可以完全切過去 等完全切換去新站並且穩定後,再來分享 WordPress 轉換 Hugo 的過程~😆 ...

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.yml ​ 拷貝以下內容,貼上後需要修改 16、25 行的 email 跟 volumes 的 certs 路徑,其他可以不用動,保存然後退出 ...

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 群組裡面 # 將你帳號加入 docker 群組 $ sudo usermod -aG docker $USER # 退出 $ exit 完成以後,再登入回去機器中即可生效(有些機器可能要重開機才會生效) ...

March 6, 2020 · 4 min · jkgtw

RSS 不能亡!自己架一台 RSS Reader 吧!「Miniflux」

Google 多年前宣佈關閉 Google Reader 這個超讚的閱讀器後,在這段時間也跑出好多類似服務的公司 我也試用了好幾個 RSS Reader 的服務,像是 Feedly、Inoreader。。等等都有使用過一段時間 因為都是用免費版的經常換來換去也不舒服,而且各家除了會投放廣告以外也會有各種大大小小的限制(免費嘛) ​ 其實哪一家提供的服務對我來說比較沒差,因為我平常在 macOS 與 iOS 上面都是使用 Reeder 為閱讀軟體 我主要是閱讀記錄可以同步,另外就是隨著使用 RSS 的時間越久,我訂閱的數量也隨之越多了 雖然我目前還沒有超過 Inoreader 免費版 150 個訂閱數的限制,但是也快到達極限了(目前 120 個左右) 所以就乾脆自己搭一個 RSS Reader 自用吧! ​ 稍微搜一下網路上開源的 RSS Reader 還蠻多的,剛開始看 NewsBlur 不錯,後來看見討論 Tiny Tiny RSS 與 Miniflux 也不少 剛開始時候找網路上的 Docker Image 來嘗試使用,然後反覆自己搭建完整環境也玩玩看~ 最後選擇了 Miniflux v2 的版本來使用,原因是因為這套它使用 Go 語言編寫的,直接下載編譯好的執行檔就能跑,沒有其他依賴 安裝好作者指定的數據庫 Postgres,然後使用下載的編譯檔簡單準備一下數據庫就可以開始使用了! 整個部屬的過程跟使用 Docker 差不多,所以還蠻推薦使用的~ ​ Miniflux 總體的優勢如下: 針對「閱讀」做了最佳化,極簡的使用界面 自動抓取圖片並快取,加速瀏覽 內建全文抓取功能 僅專注在 RSS 部分,無其他花俏功能 支援多帳號使用,且內建 Fever API,與第三方 RSS Reader 完美搭配 快速且高效!使用快捷鍵快速瀏覽你的未讀新聞 注重隱私!無廣告、無用戶追蹤 超級簡單的安裝方式,直接把執行檔放到伺服器上即可使用,沒有其他依賴,簡單高效 免費且開源,自己安裝在自己伺服器上 下面來說一下我在 Raspberry Pi 樹莓派(Debian)上的安裝過程,我也簡單記錄一下 ...

April 5, 2019 · 2 min · jkgtw