我一直在想,原生 QNAP 應用程式與在 Docker 容器中運行相同應用程式有什麼優勢。
例如,我在我的機器上以 qpkg 方式安裝了 Emby Server,但也透過 docker 部署了一次,只是想看看有什麼不同。
想請大家討論一下這兩種選擇的優缺點。
我一直在想,原生 QNAP 應用程式與在 Docker 容器中運行相同應用程式有什麼優勢。
例如,我在我的機器上以 qpkg 方式安裝了 Emby Server,但也透過 docker 部署了一次,只是想看看有什麼不同。
想請大家討論一下這兩種選擇的優缺點。
一般來說,獨立應用程式應該有較少的額外負擔。這一切取決於它是如何編寫和實作的。執行非 QNAP 專用版本可能會讓你對應用程式有更多的彈性和控制權。實際情況可能有所不同(YMMV)。
原生應用程式以管理員權限運行,因此通過 Docker 安裝應用程式可以帶來很大的安全效益。(如果應用程式對外網開放,安全效益更為顯著)
我總是選擇 Docker 而不是原生執行。通常更新更好,安全性和控制性也更佳,備份與還原也方便許多,甚至還原到另一個系統時,停機時間也只需幾分鐘。
原生 QNAP 應用程式(QPKG)是直接透過 App Center 或手動安裝套件的方式安裝到 QTS/QuTS hero 作業系統上。我個人會使用它,因為:
但有時候確實因為 QA 流程,套件的更新速度可能會比較慢。
至於 Docker:
以我在這裡的經驗,我會針對一些「正式」的功能釋出 QPKG,而 PoC(概念驗證)和測試則會用 Docker 讓合作夥伴跑專案。qnapsvd
如果這些小功能運作良好,或許我們會請開發人員將它們遷移成正式的 QPKG 功能。