3

我正在使用 BigTop 1.2.0,vagrant 配置器运行良好,但是当我尝试使用 Docker 配置器时,显示以下错误:

命令

$ ./docker-hadoop.sh -c 3

错误

环境检查... 检查 docker:Docker 版本 17.09.0-ce,构建 afdb6d4 检查 docker-compose:docker-compose 版本 1.16.1,构建 6d1ac219 检查 ruby​​:ruby 2.4.2p198(2017-09-14 修订版 59899)[ x64-mingw32] -e:1:in <main>': undefined method[]' for nil:NilClass (NoMethodError) -e:1:in <main>': undefined method[]' for nil:NilClass (NoMethodError) 不推荐使用 scale 命令。请改用带有 --scale 标志的 up 命令。创建 20171020215450r21863_bigtop_1 ... 创建 20171020215450r21863_bigtop_2 ... 创建 20171020215450r21863_bigtop_3 ...

错误:未提供 20171020215450r21863_bigtop_2 资源 ID 错误:未提供 20171020215450r21863_bigtop_3 资源 ID 错误:未提供 20171020215450r21863_bigtop_1 资源 ID

回溯(最近一次调用最后):
文件“docker-compose”,第 6 行,在
文件“compose\cli\main.py”中,第 68 行,在主
文件中“compose\cli\main.py”,第 121 行,在perform_command
文件“compose\cli\main.py”,第 796 行,按比例
文件“compose\service.py”,第 257 行,按比例 文件“compose\service.py”,第 444 行,在 _execute_convergence_start 文件“compose\service .py”,第 395 行,在 _execute_convergence_create 文件“compose\parallel.py”,第 70 行,在 parallel_execute docker.errors.NullResource:未提供资源 ID 无法执行脚本 docker-compose Docker 容器启动失败!

提前致谢。

4

1 回答 1

2

看来您正在使用 mingw32 在 Windows 上运行 docker-hadoop.sh。仅仅因为资源限制,Docker Provisioner 已经过测试,可以在 Mac 和 Amazon Linux for Bigtop 版本上运行。所以我不太确定 Windows 方面的故事是什么;)

但是,从您的错误日志中:

nil:NilClass (NoMethodError) 的未定义方法 []'

我很确定这个问题与我们的 ruby​​ YAML 解析功能有关: https ://github.com/apache/bigtop/blob/master/provisioner/docker/docker-hadoop.sh#L138

为此,我建议您在 Windows 上坚持使用 Vagrant Provisioner。如果您想帮助我们使该功能与 Windows 兼容,请随时联系 dev@bigtop.apache.org

于 2017-12-08T14:43:53.603 回答