快轉到主要內容

伺服器要走The Unix Way亦或是完全容器化?

· 民國115年丙午年
·
切換繁體/簡體 ·
分類 Linux系統 Self-hosting自架
標籤 Linux Docker

我有多個Linux伺服器,不論是VPS還是樹莓派亦或是x86主機,我認為所有跑在Linux Server上的服務都應該要是container而非systemd service,除了SSH以外。

ChatGPT生成

從幾年前用Arch Linux的時候就養成了這個習慣吧。在資源有限的硬體環境,如樹莓派和1C1G VPS,我會使用container取代VM。

覺得有點矛盾的一點是,不論是在我自己的樹莓派還是VPS,我都會用Docker部署服務,連DNS Server與Cloudflare Tunnel這些都是如此。

因為這建基一個假設與恐懼:部署一個服務所需要的依賴會互相衝突,破壞系統穩定性,所以應該容器化。比如如果多個程式用到不同版本的PHP,系統就會發生衝突。

此外,系統的容器服務應該是給Docker daemon統一管理,Systemd就在旁邊看就好了。我不是很喜歡Podman Quadlets的做法,很醜。

要上K8S還是Cluster嗎?可是我家又不是資料中心!Container就夠管理了吧!這是減少系統維護與減少複雜度與之間取得的平衡。

但是我的Server系統都是選取穩定的Debian來用,不太可能安裝軟體就炸,用The Unix Way,也就是安裝二進位檔去部署系統其實也是沒問題的才對。若是用Arch Linux,也根本不用擔心軟體版本太舊的問題。什麼都要Container的系統反而應該選用immutable distro才對。要是我用BSD系統當伺服器的話就不可避免的只能用The Unix Way了!但Linux用習慣了沒什麼動機換掉。

我想純粹是我太懶了,Docker包裝好的服務寫個docker-compose就能快速上線,不用安裝一堆依賴。然後用Portainer網頁面板就能管理。

ChatGPT生成

相關文章


感謝您的閱讀。我寫作是為了誠實表達想法,而不是追逐社群互動與流量。我很樂意傾聽你在仔細閱讀我文章之後的心得。若有內容勘誤 or 技術問題 or 回饋想法,歡迎透過本站「關於」頁面的Email與我聯絡。