avatar
文章
169
標籤
267
分類
17
首頁
文章分類
RSS
關於我
Hi 我劉昕
搜尋
首頁
文章分類
RSS
關於我

Hi 我劉昕

自架 CMS 系統:Ghost + Mailgun
更新於2026-01-14|Self Hosting
今天來把我們的讀書會《一個讀書會》的網站從 Halo 搬家到 Ghost。其實 Halo 算是不錯用的 CMS(內容管理系統),也提供多用戶協作管理,但可惜權限顆粒不夠細緻,除非大家都設為管理員否則沒辦法協作同一篇文章,不盡理想。而 Ghost 就提供 Admins, Editors, Authors, Contributors 四種身份,其中的 Editor 恰好就是我們需要的——同一次讀書會,分享者們能把內容丟進同一篇文章之中。 那你說文章協作為何不直接用 Notion?其實,Notion 會是相當理想的解決方案。作為協作平台,他甚至還能將文章上線,完美整合了我們想協作又想上線(觸及外網交朋友、同時方便我們自己隨時訪問複習)的需求。不過若能自架,我還是會更願意先走自架的方案,萬一讀書會舉辦到第三十個年頭結果 Notion 倒了,那就不舒服啦。總之,我們來架設 Ghost 網站吧! 透過 Docker Compose 架設 Ghost 官方對於自架提供了完整的文檔指引,然而嘛,官方的預設做法綁定了 Caddy 作代理,並且整合了 Tinybird 跟 ActivityPub ...
讀書筆記:《佛畏系統》
更新於2025-11-22|讀書筆記
奈特不確定性 來自 Frank Knight 1921 年出版的《Risk, Uncertainty and Profit》。其中解釋了風險、不確定性的差異,並找到了「利潤」真正的來源。 車禍是風險、賭博是風險;但未來十年是否能發現新能源是不確定性、新創事業會不會成功是不確定性。企業承擔不確定性,創造利潤。 思維密度 簡單的例子:一篇花了一個小時寫出來的文章我用一分鐘讀完,那思維密度為60。 所以書籍的思維密度可就非常可觀。某個大師濃縮了他二十年來的心血寫出的一本書,我們花一個禮拜把它看完,思維密度極高,賺翻。 心流的本質 進入心流會關閉前額葉皮質。以《快思慢想》的模型來說,心流狀態下,系統二(前額葉負責的慢思考)關閉了,省出來的能量都跑去運作快思考的系統一,創造出無比流暢的體驗。 時間管理的最高境界:不做「必須做的事」 如果有一個 deadline 在禮拜五的 case,它在禮拜五就是「必須做的事」,但它在禮拜一就是一件可做可不做的事情,此時你就有主動權。主動權有什麼用呢? callback回去《致富心態》:幸福跟對生活的掌控感彼此呈正相關。 時間就像金錢,你花掉了就不是你...
Docker 更換掛載點:將 immich 資料搬遷到外接 SSD
更新於2025-11-07|Self Hosting
docker 更換掛載點其實非常方便,倒不如說這部分就是 docker 會那麼好用的其中一個重要因素。一般來說,我們只要在 docker-compose.yml 中把 volumes 欄位設定一下,重新運行,一切就會像沒事人一樣,無痛搬家。 隨便拿一個簡單的 docker-compose 來看: 1234567891011services: glance: container_name: glance image: glanceapp/glance restart: unless-stopped volumes: - ./config:/app/config - ./assets:/app/assets ports: - 5678:8080 env_file: .env 我們可以看到在 volumes 跟 ports 裡面都有著 host:container 這種格式的寫法。在 volumes 中,這就表示你的容器會直接把宿主的 ./config 當成 /app/config 來取用。而在 ports 中,你的容...
在 Windows 系統上架設 NTP 伺服器
更新於2026-01-24|其他
需求背景 此例中,我們要替電影院架設 TMS 系統,所以我們會有一台作為中控的 Windows 電腦,跟數台放在各個影廳的投影機伺服器。 一般來說,設備只要能上網,時間就能透過網際網路定時進行校準,一片蛋糕。但電影院的投影機伺服器為了做到內容保護,在 DCI 認證的規範之下,通常就只用封閉的內網來進行控制、傳輸與播放,於是我們就得迂迴地提供正確的時間給它們。 如果我們的中控電腦有兩張網卡,一張上網去讀時間,一張內網作為 NTP 伺服器,把時間資訊傳給投影機們如何? 挺不賴的,我們開搞。 安裝 NetTime 雖然 Windows 系統本身就自帶 NTP 的功能,但使用方式有點不直觀,本文選用簡單快速的第三方小工具 NetTime。 安裝開啟後,程式就可以開始從網路上抓取時間進行校準。此時我們進入設定: 把 Allow other computers to sync to this computer 的選項打開,化身為 server: 噠啦,就是那麼簡單。 防火牆設定 至此,Windows 電腦已經可以作為 client 從外網讀取正確時間,並同時作為 server 提供該時間...
讀書筆記:《致富心態》(金錢心理學)
更新於2025-10-12|讀書筆記
沒有人真的是瘋子 指數基金的歷史不到五十年、避險基金才差不多二十五年,房屋貸款、信用卡、汽車貸款都是二戰後才出現。美國401退休金賬戶在 1978 開始運行,台灣勞退則是 1986——都只是初生之犢。所以我們如果做出奇怪的財務決策,那也是在所難免。(而因為入不敷出,台灣在 2005 年改成了新制。) 比如說,美國人購買樂透的金額,超過電影、遊戲、音樂、體育、書籍的消費總額。並且,樂透的消費群體,主要集中在收入最低的那群人。書上的數據是,最低收入家庭平均每年花四百美元在買樂透,但四成的美國人遇到緊急事故時卻湊不出四百美元,所以整體而言,花四百美元買樂透的人跟湊不出四百美元的人,是同一群人。 但他們真的是瘋子嗎?如果我們用他們的角度來看,也許也沒那麼奇怪,買樂透可能是他們唯一能擁抱美夢的時刻了。 運氣與風險 作者問諾貝爾經濟學獎得主 Robert Shiller 有什麼關於投資我們無法參透的道理,他認為是「運氣在投資成功的結果中所扮演的確切作用」。 鐵路巨擘康內留斯·范德比爾特(Cornelius Vanderbilt)成就斐然,但他幾乎每一筆商業交易都違反法律,不過成敗論英雄,我...
透過 GPIO 來控制 BrightSign 播放器
更新於2025-10-07|其他
本文我們來實作可以進行互動的螢幕。怎麼個互動法?這次以兩種為例: 透過 RFID ,刷卡感應後,讓本來循環播放 A 影片的螢幕,改為播放 B 影片。 透過超聲波回聲判斷,人靠近(或手懸浮在感應區域)時,讓本來循環播放 A 影片的螢幕,改為播放 B 影片。 為了達到以上效果,我們這次需要的設備除了顯示器以外還需要: 數位看板播放器(Digital Signage Players),此處我們選用 BrightSign 的 HD225。 感應 RFID 並回傳訊號的傳感設備。此處我們不買現成產品,選用微控制器 ESP-WROOM-32 + RFID 傳感模塊 MFRC522 來土炮一個。 感應超聲波並回傳訊號的傳感設備。此處我們也不買現成產品,選用微控制器 NodeMCU + 超聲波傳感模塊 HCSR04 來土炮一個。 RFID 互動螢幕 我們的邏輯很簡單:RFID 模塊感應讀取輸入,把 ID 傳入 ESP-WROOM-32 判斷,如果是我們要的 ID,則輸出高電平訊號。當 HD225 讀到高電平訊號傳入,觸發後續影像內容。 首先來搞定 RFID 的部分。我們 ESP-WROO...
容器化實務操作,以 Taiko-Web 為例
更新於2025-08-16|Self Hosting
本篇我們要把一個稍微陳舊的項目 Docker 化,方便沒有 Linux 伺服器的使用者們也可以快速運行服務。 此處我們選用的服務是 2011 就推出,但在 2020 以降才開始紅起來,但也因此被萬代版權方盯上,後來被全網封殺掉的 bui 製作的 Taiko Web。 但開源的力量是無比強大,我早已 fork 了一份備份出來,所以依然保有其原始碼。開源社群的迷人之處就在這裡,你說是吧。 該項目是一個大部分使用 JavaScript 刻出來的網頁版太鼓達人模擬器,其透過前端技術就可以讓用戶流暢地遊玩,十分方便,令人印象深刻。但今天我們不討論其服務內容,本篇我們將著重在將一個運行在 Linux 上的服務給容器化——以便用戶快速自行架設服務,或甚至跨平台運行——的過程。 各位可以一邊對照原作者的 manual setup,一邊看我們 dockerfile 的對應做法,方便理解。那我們開始咯。 安裝過程與重新打包 Installing the requirements 原始的安裝方式為: If you have not already done so, install the above...
自架推播通知伺服器:ntfy
更新於2025-08-16|Self Hosting
原本我的 NetAlertX 跟 Uptime Kuma 使用的通知方式都是透過 gmail,用 SMTP 的方式,自己寄信給自己。但後來發現,收件箱因為這樣而充滿了一堆通知,十分雜亂也不方便管理。 所以此篇我們要來架設 ntfy,並將 NetAlertX 跟 Uptime Kuma 的通知方式設定成 ntfy,最終透過 ntfy 的 ios app,從 iPhone 接收通知。 安裝 ntfy 此處我們採用 docker compose 的安裝方式,yaml 如下: 123456789101112131415161718192021222324services: ntfy: image: binwiederhier/ntfy container_name: ntfy command: - serve environment: TZ: Asia/Taipei # optional: set desired timezone NTFY_BEHIND_PROXY: true NTFY_BASE_URL: http...
台語小筆記:留意輕聲,詞義差很多
更新於2025-06-24|語言筆記台語筆記
台語作為一門標準的聲調語言(tone language),不同的聲調會有不同的意思表達。 上次回外婆家被催婚,其中就有一句: senn nn̄g-ê--ah gín-ná(生兩個啊gín仔) 我就說好啦,不要急,但為什麼是兩個?才知道此處的 nn̄g-ê--ah 跟 nn̄g-ê 的意思可差多了。前者是「兩三個」的意思,而後者是切確的「兩個」。 讀音上,前者 nn̄g-ê--ah 的 ê 讀輕聲,後者 nn̄g-ê 的 ê 則讀五聲。 所以如果有人跟你說: lâi lim nn̄g pue(來喝兩杯) 這裡如果遇到 nn̄g--pue(三聲輕聲)就是喊你來喝個兩三杯,幾杯不重要。但如果遇到的是 nn̄g-pue(三聲一聲),那就真的是指「兩杯」了。 其他輕聲改變詞義的例子 買無 bué-bô(買不到) bué--bô(買不買?) 驚死 kiann-sí(害怕死亡) kiann--sí(嚇死) 有影無 ū-iánn-bô(真的沒有) ū-iánn--bô(真的假的?)
智能家居 EP11:用反向代理取代端口轉發(NPM+DuckDNS)
更新於2025-06-06|智能家居
我們在 智能家居 EP9:利用DDNS、通訊埠轉發進行遠端控制 已經透過 Port Forwarding 的方法實現外網訪問,可以成功在外面控制家中設備。 但實際上,在網路安全的領域中,端口轉發意味著 port 的暴露,其實大家都看得到你有哪些 port 是開的。例如,我用外網透過 nmap 來掃描我家可以看到: 開放的 port 那是一個清清楚楚明明白白。 對此,我們使用 Nginx Proxy Manager (下稱 NPM)來替我們進行反向代理,減少我們直接開 port 的需求。假設我架設了五個服務,本來我要分別開五個 port 來訪問。現在透過 NPM,我可以只開 80 跟 443 出來給 NPM,往後需要訪問什麼服務,通通都去問 NPM,讓 NPM 統一替我們處理請求。這就是所謂的代理(proxy)。 在此架構中,NPM 可以運行在與 HA 同網路的另一個設備中、與 HA 同一個設備中的不同容器(如 docker)中、或甚至以 add-on 的形式裝在 HA 身上(該附加元件在這裡)。而我此處是運行在與 HA 同網路的另一個設備中,可以參考一下我目前的拓撲: 編輯...
123…17
avatar
Shuai
Hi 我劉昕啦!Shuai 是我的英文名字,唸作帥,取其義。
文章
169
標籤
267
分類
17
關於我
分類
  • Self Hosting4
  • 其他39
  • 台股筆記4
  • 和弦筆記18
  • 家教筆記15
    • 高中數學10
    • 高中生物3
    • 高中通識2
  • 數位音樂製作8
    • Logic Pro X2
  • 智能家居12
  • 架站筆記15
  • 語言筆記15
    • 台語筆記3
    • 日文筆記6
    • 韓文筆記5
  • 讀書筆記39
標籤
Arduino Proxy 李榮浩 Podcast F.I.R. FrameView 三次函數 Plug-in X11 快樂 Processing 三井ゆきこ 袁婭維 哲學 Alpha Channel 吕口口 軍事訓練役 Terminal 卡繆 天文 自由意志 4顆星書籍 陸虎 買辣椒也用券 王巨星 信 現沖賣出借 PCR 孟德爾 Windows 2顆星書籍 KaTeX Rufus 移調 徐世珍 詹雯婷 ESP8266 劉昕 Xquartz 張傑 綜合除法 版稅 人魚的旋律 ETF 排列組合 圓錐曲線 法律 北斗神拳 進擊的巨人 讀書會 心靈 Main Window 自媒體 Uptime Kuma 安妮亞 黃俊郎 朴成日 藍又時 分期付款 梁心頤
網站資訊
文章數量 :
169
最後更新時間 :
© 2022 - 2026 By Shuai