我正在尝试按照docker-graphite-statsd中的说明运行以下代码:
docker run -d\
--name graphite\
--restart=always\
-p 80:80\
-p 2003-2004:2003-2004\
-p 2023-2024:2023-2024\
-p 8125:8125/udp\
-p 8126:8126\
graphiteapp/graphite-statsd
它给出了这个错误:
$ sudo docker run -d --name graphite --restart=always -p 80:80 -p 2003-2004:2003-2004 -p 2023-2024:2023-2024 -p 8125:8125/udp -p 8126:8126 graphiteapp/graphite-statsd
sudo: docker: command not found
这是在 Mac 上。我试过
brew install docker
但没有任何区别。
我该如何解决?
恐怕您需要手动将
docker
命令添加到您的 PATH 中。它可以通过配置文件来完成。由于 ZSH
现在是 MacOS 上的默认 shell,它将转到 ~/.zprofile
文件:
# Add Visual Studio Code (code)
export PATH="$PATH:/Applications/Visual Studio Code.app/Contents/Resources/app/bin"
# Add Docker Desktop for Mac (docker)
export PATH="$PATH:/Applications/Docker.app/Contents/Resources/bin/"
使用 Homebrew 安装 docker 后,通过在 Finder 的应用程序文件夹中搜索 Docker 并运行它来启动 Docker 守护程序。
完成上述操作后,我必须从终端运行以下命令: docker run -d -p 80:80 docker/getting-started
现在从终端运行“docker --version”,它应该会给出想要的结果。
参考:https://www.cprime.com/resources/blog/docker-on-mac-with-homebrew-a-step-by-step-tutorial/
运行 brew list 这将显示所有已安装的 Homebrew 软件包的列表。
但强烈建议在您的 mac 上使用以下链接安装 docker :
如果您使用官方包成功安装了 docker,该命令应该在
/usr/local/bin/docker
下可用。
该目录可能还不在您的 $PATH 中,因此您可以尝试添加它,运行:
export PATH="/usr/local/bin:$PATH"
这会在您的
/usr/local/bin
前面添加PATH
。
信用:https://stackoverflow.com/a/57231241/1601580
详情:
检查 docker 不存在:
docker
zsh: command not found: docker
检查路径是什么:
echo $PATH
/Users/brandomiranda/.opam/__coq-platform.2022.01.0~8.15~beta1/bin:/Users/brandomiranda/opt/anaconda3/envs/meta_learning/bin:/opt/homebrew/bin:/usr/bin:/bin:/usr/sbin:/sbin
然后添加 PATH(要为当前 shell 设置它以及从当前 shell 使用
export
启动的所有进程):
export PATH="/usr/local/bin:$PATH"
检查我添加到路径的内容:
echo $PATH
/usr/local/bin:/Users/brandomiranda/.opam/__coq-platform.2022.01.0~8.15~beta1/bin:/Users/brandomiranda/opt/anaconda3/envs/meta_learning/bin:/opt/homebrew/bin:/usr/bin:/bin:/usr/sbin:/sbin
似乎
/usr/local/bin
不在我的道路上。可能很奇怪?对我来说似乎很奇怪......为什么不在那里?
可能有更好的解决方案,但这对我有用 (macOS):
编辑您的
.zshrc
或.bashrc
,具体取决于您使用的是哪一个
vi ~/.zshrc # or ~/.bashrc
就我而言
.zshrc
# ~/.zshrc
...
alias docker="/Applications/Docker.app/Contents/Resources/bin/docker"
...
source ~/.zshrc
现在应该可以了
docker --version
这是可行的,因为我们将
docker
别名为位于 /Applications/Docker.app/Contents/Resources/bin/docker
. 中的可执行文件
这个命令帮助了我:
/Applications/Docker.app/Contents/Resources/bin/docker --version
之后检查版本:
docker --version
Homebrew 的 docker 在 10.13 上不再安装 /usr/local/bin/docker 或 /Applications/Docker.app。
您必须从上面的 docker.com 站点下载适用于 Mac 应用程序的 Docker Desktop 并安装它。
从 docker desktop mac 开始(在我的例子中是 v4.18,Apple Silicon 版本),默认安装是
/usr/local/bin
$HOME/.docker/bin
查看 Docker Desktop > Settings > Advanced,它提供了两个选项:
对于系统,该位置位于默认的 macOS 路径中。对于用户,您需要在路径中添加一个条目。
系统:(需要密码) Docker CLI工具安装在
.下/usr/local/bin
用户:Docker CLI工具安装在
下。注意:您需要手动添加$HOME/.docker/bin
到您的 PATH.$HOME/.docker/bin
您还可以在
Mac上使用以下命令安装
docker
:
brew install docker-machine docker
所以要安装图像,而不是
/bin/docker run -d -p 80:80 docker/getting-started
使用
/Applications/Docker.app/Contents/Resources/bin/docker run -d -p 80:80 docker/getting-started
如果你使用Homebrew安装Docker,你应该在应用程序中打开它,确认注意事项,并将其添加到后台应用程序中。
然后Docker app就启动了,可以使用docker XXX的任意命令了
你必须将它添加到你的路径中。如果你的外壳是
bash
,这里是你需要采取的步骤:
nano ~/.bash_profile
然后,添加您的 Docker 二进制路径(例如我的路径):
export PATH="$PATH:/Applications/Docker.app/Contents/Resources/bin/"
然后重新加载配置并测试:
source ~/.bash_profile && docker --v
希望这有帮助!
export PATH="$PATH:/Applications/Docker.app/Contents/Resources/bin/"
是唯一适合我的解决方案
尝试了
export PATH="$PATH:$HOME/.docker/bin"
但失败了,虽然它是真实位置的符号链接,我可以在终端中从它运行 docker