Colima是适用于macOS和Linux的Docker桌面替代方案,现在已被DDEV支持。
DDEV是一个开源工具,它使在几分钟内建立和运行本地PHP开发环境变得简单。由于它的每个项目的环境配置,它是强大和灵活的,它可以被扩展,版本控制和共享。简而言之,DDEV旨在让开发团队在他们的工作流程中使用容器,而不需要复杂的定制配置。
DDEV用一个灵活的、现代的、基于容器的解决方案取代了更传统的AMP堆栈解决方案(WAMP、MAMP、XAMPP等等)。因为它使用容器,DDEV允许每个项目使用任何一组应用程序、网络服务器的版本、数据库服务器、搜索索引服务器和其他类型的软件。
2022年3月,DDEV团队宣布支持Colima,这是一个用于macOS和Linux的开源Docker桌面替代品。Colima是开源的,根据所有的报告,它比它的替代品有性能上的提升,所以使用Colima似乎是一个没有问题的选择。
迁移到Colima
首先,Colima几乎是Docker Desktop的直接替代品。我说几乎是因为在现有的DDEV项目中使用它时,需要进行一些重新配置。具体来说,数据库必须被重新导入。解决的办法是首先导出你的数据库,然后启动Colima,再导入它。简单。
Colima需要安装Docker或Podman命令。在Linux上,它还需要Lima。
Docker默认与Docker Desktop for macOS一起安装,但它也可以作为一个独立的命令使用。如果你想100%的纯利马,你可以卸载Docker Desktop for macOS,并独立安装和配置Docker客户端。
如果你选择继续使用Colima和Docker Desktop,那么当从命令行发出docker命令时,你必须首先指定你想用哪个容器。在下一节中会有更多这方面的内容。
在macOS上安装Colima
我目前有一些本地项目使用Docker,还有一些使用Colima。一旦我理解了基础知识,在它们之间切换就不难了。
-
为了开始,使用Homebrew安装Colima
brew install colima
-
ddev poweroff
(安全起见) -
接下来,用
colima start --cpu 4 --memory 4.
启动Colima。--cpu
和--memory
选项只需要做一次。第一次之后,只有colima start
是必要的。 -
如果你像我一样是DDEV的用户,那么你可以用通常的
ddev
命令来启动一个新的Drupal 9网站(ddev config, ddev start
,等等。)建议启用DDEV的mutagen功能,以使性能最大化。
在Colima和Docker桌面之间进行切换
如果你还没有准备好切换到Colima批发,有可能同时安装Colima和Docker Desktop。
-
首先,关闭ddev的电源。
ddev poweroff
-
然后停止Colima。
colima stop
-
现在运行
docker context use default
,告诉Docker客户端你想用哪个容器来工作。default
这个名字是指Docker Desktop for Mac。当运行colima start
,它会自动将Docker切换到colima
上下文。 -
要继续使用默认(Docker Desktop)上下文,请使用
ddev start
命令。
从技术上讲,启动和停止Colima是不必要的,但在两个上下文之间切换时使用ddev poweroff
命令是必要的。
最近版本的Colima在Colima停止时将Docker上下文恢复为default
,所以docker context use default
命令不再需要。无论如何,我仍然使用docker context show
,以验证default
(Docker Desktop for Mac)或colima
上下文正在使用中。基本上,context
这个词指的是Docker客户端将命令路由到哪个容器提供者。
试试Colima
总的来说,我很喜欢我目前看到的情况。我没有遇到任何问题,而且基于Colima的网站似乎更敏捷(特别是当DDEV的Mutagen功能被启用时)。我肯定会预见自己在未来几周内将项目网站迁移到Colima。