【问题标题】:Stuck with docker command not found on first installation of docker-machine首次安装 docker-machine 时找不到 docker 命令
【发布时间】:2021-02-05 10:45:35
【问题描述】:

我正在使用 Docker,由于我的 Catalina 系统不支持虚拟化,我正在使用 docker-machineVirtualBox。 我按照https://docs.docker.com/machine/install-machine/ 的安装指南进行操作,并指出我可以使用docker-machine create --driver virtualbox default 命令创建一台新机器,并在使用docker-machine ls 链接机器时出现。 那么

要查看如何将 Docker 客户端连接到此虚拟机上运行的 Docker 引擎,请运行:docker-machine env default

所以我运行它,命令是

运行这个命令来配置你的 shell: eval $(docker-machine env default)

也运行它,以便 Docker 的文档继续我应该能够运行 Docker 命令,如建议的 docker run busybox echo hello world 但我收到 zsh: command not found: docker 错误消息。

我按照 Docker 文档使用的确切步骤是:

0 Install Docker Desktop 

1 enable writing on the /usr/local/bin folder for user

sudo chown -R $(whoami) /usr/local/bin  

2 install Docker-Machine

base=https://github.com/docker/machine/releases/download/v0.16.0 &&
  curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/usr/local/bin/docker-machine &&
  chmod +x /usr/local/bin/docker-machine

3 install Xcode CLi..manually from dev account

4 Install Home Brew

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"


5 Install wget ( Using Brew)

brew install wget

6 Install bash completion scripts

base=https://raw.githubusercontent.com/docker/machine/v0.16.0
for i in docker-machine-prompt.bash docker-machine-wrapper.bash docker-machine.bash
do
  sudo wget "$base/contrib/completion/bash/${i}" -P /etc/bash_completion.d
done

7 enable the docker-machine shell promp

  1: vim ~/.bashrc

   2: i

  3: Pasted this:

PS1='[\u@\h \W$(__docker_machine_ps1)]\$ '

4: press esc
5: press :
6: type wq! and press enter


Install VirtualBox, ExtensionPack and SDK


https://www.virtualbox.org/wiki/Downloads

Done!

我认为问题在于我在 .bashrc 文件中添加了 PS1='[\u@\h \W$(__docker_machine_ps1)]\$ ' 而不是 .zshrc,因为我在 Catalina 上,所以我更正了它并退出了终端。重新打开它,现在终端显示[\u@\h \W$(__docker_machine_ps1)]\$ 而不是vinnytwice@Vinnys-iMac ~ %(这看起来对吗?)。 我重新运行docker-machine ls 并正确列出了先前创建的虚拟机,因此我再次使用eval $(docker-machine env default) 将shell 连接到它,但是在运行docker 命令时docker run busybox echo hello world 仍然相同zsh: command not found: docker 错误.. 你能看到为什么不运行 docker 命令吗? 一如既往的感谢

【问题讨论】:

    标签: docker shell docker-machine


    【解决方案1】:

    好的..终于找到了问题..正如错误消息所述..没有安装Docker CLI..我认为安装Docker桌面也会按照docker-machine安装指南安装它,但是我想这意味着它适用于具有虚拟化功能的机器..不是我的情况..所以用 brew 命令安装了它brew install docker 并且它现在可以工作了。 此外PS1='[\u@\h \W$(__docker_machine_ps1)]\$ ' 设置确实在.bashrc 文件中,而不是.zshrc。 希望它可以帮助其他人开始..

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多