身份驗證的部分先告一段落,接著來找找下一個部件: Content Management Systems (CMS) 所要使用的服務。
Awesome-selfhosted 中列了大概有二十多個 ,挑了三個 headless CMS 來比較篩選:Payload, Strapi, Directus,最後是選擇先使用 Directus ,下面列個理由。
Payload:支援的資料庫有 MongoDB 跟 Postgres, 不過 Postgres 相關的功能目前還是 Beta 版,目前喜歡用 Postgres 所以這點勸退。另外 SSO 功能屬於 Enterprise 的服務,免費用不了。
Strapi:無法直接套用於既有的資料庫,必須在新建專案後根據 Strapi 的格式設定好 schema ,再將資料倒過來,這點很勸退,代表想套用在既有專案上會很麻煩。另外 SSO 也是Enterprise 的服務。
Direcuts:自架的話公司年收在 5 百萬美金(含募資)以下都不用買授權,對個人來說等於沒什麼限制。並且可以直接套用於既有資料庫,雖然還是有些地方需要調整,另外支援的資料庫類型也多。
再來話不多說馬上啟動 Diretus 吧
docker run \
-p 8055:8055 \
-e SECRET=replace-with-secure-random-value \
directus/directus
要留意一下之後要用的管理員帳號密碼會在 log 裡。
啟動完成後打開 http://0.0.0.0:8055/ 就能登入並看到管理畫面了。