原生 MacOS Docker 容器现在成为可能

原生 MacOS Docker 容器现在成为可能

你有没有希望你可以在macOS上运行原生的macOS Docker容器?好吧,现在你可以了,这要归功于一个名为macOS容器的伟大免费项目。

如果你几乎在任何级别的开发人员世界中,你可能都有使用Docker容器的经验,这些容器因其实用性而广受欢迎。Docker 容器提供了一种轻量级且高效的方式来跨不同环境打包和分发应用程序和依赖项,它是独立的,能够在开发或测试应用程序、软件、系统等时帮助实现快速部署、管理和可扩展性。到目前为止,MacOS本身并不支持容器,但是由于macOS容器,这种情况已经发生了变化。

原生 macOS 容器在这个项目中处于早期开发阶段,但有了它们,您可以在 macOS 中运行 macOS,使用 Docker 构建映像并分发它们,听起来很棒,对吧?

您需要熟悉一些注意事项;首先,根据开发人员的说法,该项目是“非常阿尔法”的,因此显然需要您自担风险,其次,您需要在Mac上禁用SIP,第三,您需要在Sonoma,Ventura,Monterey或Catalina上安装Homebrew(是的,这意味着这些也是唯一受支持的macOS主机操作系统)。如果您对所有这些感到满意,请查看GitHub上的项目,并启动Homebrew来安装macOS容器并开始工作。

项目主页位于 https://macoscontainers.org,Github页面位于此处。

跳入终端以开始使用。

假设您已经安装了Homebrew,则需要安装MacFuse:
brew install --cask macfuse

接下来,您需要安装 macOS Container Docker 版本:
brew install docker docker-buildx macOScontainers/formula/dockerd

完成后,启动容器:
sudo brew services start containerd

然后启动 dockerd:
sudo brew services start dockerd

接下来,通过首先为插件创建一个目录来设置 BuildKit;
mkdir -p ~/.docker/cli-plugins

然后将 buildkit 链接到 docker:
ln -sfn /opt/homebrew/opt/docker-buildx/bin/docker-buildx ~/.docker/cli-plugins/docker-buildx

现在需要向 GitHub 容器注册表进行身份验证:
echo [YOUR_ACCESS_TOKEN] | docker login ghcr.io -u [GITHUB_USERNAME] --password-stdin

最后,是时候运行您的第一个本机 macOS 容器了:
docker run --rm -it ghcr.io/macoscontainers/macos-jail/ventura:latest echo "Hello from macOS container"

这些说明来自此处的 GitHub 页面,如果您想了解更多信息,可以参考该页面。

在 ycombinator 上的 HackerNews 上也有一个关于这个项目的有趣讨论,如果你从开发人员的角度对这个项目感到好奇,值得一试。

如您所知,Docker 容器之所以如此受欢迎和有用,是因为它们提供了一种轻量级且高效的方式来提供一致的包,这些包可用于在不同环境中分发和运行应用程序及其依赖项。通过将应用程序和依赖项包含在一个独立的容器中,开发人员可以轻松地确保他们的软件在他们部署到的任何其他系统上一致地运行,这有助于缩短开发时间、部署、扩展、管理等等。

正文完