一千萬個為什麽

搜索

桌面上的macOS測試:Docker容器與Homebrew的安裝



我經常在我的MacBook上測試一些東西。大多數數據庫和數據存儲相關的東西(MongoDB,MariaDB,Postgres)。我用Homebrew安裝軟件並測試。

我想知道是否應該切換到碼頭?什麽是優點和缺點Homebrew與Docker在本地桌面上測試東西?

轉載註明原文: 桌面上的macOS測試:Docker容器與Homebrew的安裝

一共有 2 個回答:

使用Docker的優點之一是可以輕松地運行不同版本的(DB)應用程序的測試,這對於Homebrew來說可能相當困難(有些應用程序不能輕易支持安裝在同一系統上的多個版本)。

使用測試你的數據庫東西的Homebrew缺點之一是數據庫與你的本地環境緊密耦合。

您將不可避免地最終需要管理正在運行的服務的細節,並且可能需要管理多個安裝的版本。如果您需要安裝需要不同版本的依賴關系的軟件,或者需要在測試數據庫上固定一個非常特定的版本,這可能會變得很復雜。


Docker可能很適合你的用例。

Docker的一個優點是能夠快速設置和拆卸。這是一個例子:

因為容器有自己的文件系統與主機隔離,所以你可以啟動一個mysql:5.6容器,執行你需要做的測試操作,並停止容器。你可以啟動另一個mysql:5.6,(甚至是一個mysql:5.7容器),並且它不會比你可能銷毀第一個容器的問題重要。這些實例彼此獨立。

您甚至可以輕松站出幾個數據庫,並執行一些非常復雜的A-B測試,如果要使用自制安裝來管理該過程,則需要花費更多的精力。


它沒有被提及作為您的使用需求,但是Docker使得與使用不同操作系統的開發者合作更容易(但也可以在本地運行docker)。您可以編寫一套本地開發設置/測試腳本,並且通常不需要進行任何更改即可獲得相同的結果。

它是過濾“它在我的機器上工作”的好工具。