通过命令行在 Mac 上安装 Docker Toolbox

Posted

技术标签:

【中文标题】通过命令行在 Mac 上安装 Docker Toolbox【英文标题】:Install Docker Toolbox on a Mac via command line 【发布时间】:2015-12-21 01:53:06 【问题描述】:

我正在尝试在 Mac 上自动设置开发人员环境。该设置的一部分是安装Docker Toolbox。我找不到任何有关如何通过命令行执行此操作的文档。如何自动化此安装(必须通过命令行触发)?


更新:正如Dennis 的表扬中指出的那样

Docker for Mac 现在存在,它是 Docker Toolbox 的替代品。您可以通过自制木桶获得它:brew cask install docker; open /Applications/Docker.app

【问题讨论】:

请注意,Docker for Mac 现在存在,它是 Docker Toolbox 的替代品。您可以通过homebrew cask:brew cask install docker 获取 在我运行brew cask install docker 之后,我运行docker 并得到-bash: docker: command not found 想通了,你需要open /Applications/Docker.app 【参考方案1】:

弃用警告

Docker Toolbox 和 Docker Machine 都已被弃用。 Docker Desktop 是官方推荐的替代品。

原答案

我发现 Docker Toolbox 可以通过 brew/cask 获得

# Install Homebrew
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
# Install Cask
brew install caskroom/cask/brew-cask
# Install docker toolbox
brew cask install docker-toolbox

安装 Docker Toolbox 后,您可以使用 Get started with Docker Machine 指南设置您的 docker 环境。


# create the docker machine
docker-machine create --driver "virtualbox" myBoxName

# start the docker machine
docker-machine start myBoxName

# this command allows the docker commands to be used in the terminal
eval "$(docker-machine env myBoxName)"

# at this point can run any "docker" or "docker-compose" commands you want
docker-compose up

在此过程结束时,将eval "$(docker-machine env myBoxName)" 添加到您的.bash_profile 中,否则当您打开一个新的shell 或终端时会出现以下错误。

"Cannot connect to the Docker daemon. Is the docker daemon running on this host?"

如果您在打开终端后启动 docker 容器,您可以手动运行eval "$(docker-machine env myBoxName)",或者重新加载您的 bash 配置文件 (source ~/.bash_profile)。

【讨论】:

装完木桶后难道还不需要通过the wizard-style setup吗? 您能否更新您的答案以完成 Docker Toolbox 的 CLI 设置说明?我猜缺少的步骤是创建默认 VM、启动它和配置 shell 环境。在这种情况下,我们也可以brew install docker docker-machine docker-compose 而不是点击工具箱桶,不是吗? @Dennis、docker-machine 和 docker-compose 在我上次查看时不能作为独立包提供。如果它们已被添加,那么这可能确实有效。 作为指南最后一部分的替代方案,您可以运行open /Applications/Docker/Docker\ Quickstart\ Terminal.app,这将在 virtualbox 中创建默认的 docker 机器,就像在向导式设置中一样。 @chris 很好,我在答案中添加了弃用警告。【参考方案2】:

Docker Toolbox 是一个不错的选择,但目前看来 Docker for Mac/Windows 正在变得更好,并且 Docker 正在投入大量时间来完善应用程序。我推荐安装 Docker 主要有两个原因:

    不干扰 Docker-Toolbox 它在 HyperKit 上运行,因此在您自己的本地主机上运行,​​而不是在 Docker 机器 IP 上运行。

安装非常简单:

brew cask install docker

要安装 docker-toolbox,您可以参考 above 帖子

【讨论】:

另外,在 Mac 上,您会看到系统工具栏图标(您无法自行安装 Toolbox)。所以,我都安装了。【参考方案3】:

自制更新

我可以澄清一些事情:

brew cask commands were deprecated on 2020-12-01 with the release of Homebrew 2.6.0. Starting then, all brew cask commands succeeded but displayed a warning informing users that the command would soon be disabled. The message also provides the appropriate replacement.
brew cask commands were disabled on 2020-12-21 with the release of Homebrew 2.7.0. Starting then, all brew cask commands failed and displayed a warning informing users that the command is disabled. The message also provides the appropriate replacement.

随着 Homebrew 2.8.0 的发布(发布日期待定),此禁用消息将被删除。

 The alternative to brew cask <command> is to use brew <command>. In many cases, you can add the --cask flag to specify casks only. For example, brew cask install atom is now brew install atom or brew install --cask atom. There are some casks that share a name with formulae (e.g. wireshark) so adding --cask ensures that the cask is installed not the formula.

我不是一个可靠的用户,但如果需要,我很乐意尝试并提供帮助。如果有任何内容被阻止并且可以使用来自 Homebrew 方面的反馈,请随时为我指明正确的方向。

现在你可以像这样跑了

brew install --cask docker 

【讨论】:

以上是关于通过命令行在 Mac 上安装 Docker Toolbox的主要内容,如果未能解决你的问题,请参考以下文章

通过命令行在 Ubuntu(或 Linux)上安装 Anaconda

从命令行在脚本中运行的 Docker 命令

无法从命令行在 Node 上安装车把

如何通过命令行在 GitHub 上发布版本?

Mac下通过Docker安装ElasticSearch集群

各平台安装和使用Docker的差异