【问题标题】:Error running docker and nodemcu-build in linux (debian)在 linux (debian) 中运行 docker 和 nodemcu-build 时出错
【发布时间】:2016-12-11 00:51:03
【问题描述】:

我正在尝试让 Docker NodeMCU 构建在 linux (debian) 环境中运行。

当我跑步时:

docker run --rm -it -v /root/jsrc/pjsg/nodemcu-firmware marcelstoer/nodemcu-build

我收到以下错误:

致命:不是 git 存储库(或任何父目录):.git

cp: cannot stat 'tools/esp-open-sdk.tar.gz': 没有这样的文件或目录

我已经找到了适用于 windows 环境的解决方案,但不适用于 linux。我认为问题在于我不理解指令:

"启动 Docker 并切换到 NodeMCU 固件目录(在 Docker 控制台)”

docker服务正在运行,我可以运行docker来创建一个容器。

【问题讨论】:

  • 确切的命令记录在github.com/marcelstoer/…,这也适用于您的情况。如果我发现它似乎不够清楚,我总是对改进感兴趣。请告诉我。
  • 我是 linux 用户并且是 docker 新手。我不明白指令“启动 Docker 并更改到 NodeMCU 固件目录(在 Docker 控制台中)”是什么意思。这不适用于linux环境。一个 linux 示例,就在您的 windows 示例下方,可能会有所帮助。
  • 我只是偶尔使用 Linux(我在 Mac 上),但我不明白为什么这不适用。你能解释一下吗?尽管对于 Linux 用户来说,附加组件“(在 Docker 控制台中)”可能听起来是多余的。
  • 由于字符长度限制,我必须将其分成两部分。第 1 部分:作为 docker 和 nodemcu-build 的全新用户,有一些令人困惑的(对我而言)说明:(i)显示的命令“docker run --rm -ti -v pwd:/opt/nodemcu -firmware marcelstoer/nodemcu-build" 在 linux 中不起作用(即使您将 'pwd' 替换为用户或 root 密码),您需要将 'pwd' 替换为 nodemcu-firmware 目录的完整路径;跨度>
  • 第 2 部分:(ii) 指令“更改到 NodeMCU 固件目录(在 Docker 控制台中)”让我寻找交互式 shell(例如,在 linux 中,如果您输入“python”被放置在一个交互式 shell aka 控制台中) - 我寻找了一个 linux/docker 等价物,它可以让我更改到目标目录。说明中有足够的信息供 linux 用户弄清楚,但对 linux 用户的步骤的快速描述(如那里的 windows 示例)会消除一些混乱。

标签: linux docker nodemcu


【解决方案1】:

解决方法:linux中正确命令的例子是:

docker run --rm -it -v /root/jsrc/pjsg/nodemcu-firmware:/opt/nodemcu-firmware marcelstoer/nodemcu-build

注意事项:

  • 在上面的示例中,将 /root/jsrc/pjsg/ 替换为文件系统中 nodemcu-firmware 的完整路径
  • docker build 要求使用 git clone 从 github.com 下载 nodemcu-firmware(git 必须安装在您的 linux 环境中)
  • 确保docker首先运行:service docker status(如果它没有运行命令运行它是:service docker start
  • 以 root 身份运行 docker 或使用 sudo

【讨论】:

    猜你喜欢
    • 2016-11-11
    • 2019-01-28
    • 2019-09-27
    • 1970-01-01
    • 2017-11-21
    • 1970-01-01
    • 2021-07-13
    • 2018-05-20
    • 2022-08-03
    相关资源
    最近更新 更多