如何使用 Cloudera Quickstart Docker 容器执行 MapReduce Job/JAR

How to Execute MapReduce Job/JAR with Cloudera Quickstart Docker container

我需要一些关于如何使用 Cloudera Docker Container 运行 MapReduce Program/Job 的帮助。
我正在使用 Linux (ElementaryOS) 高配置。笔记本电脑(24GB 内存,i7 处理器)。
我能够安装 Cloudera docker 图像,运行 它并且还毫无问题地执行了以下操作:
1. 看到 # 提示符和 运行 HDFS 命令 (hadoop fs -ls) 尽管它没有 return 任何东西。
2. 可以访问Hue Editor
3. 能够运行 Cloudera 管理器并启动所有服务(Everything)。
4.In 我的本地环境,我能够创建一个 WordCount MapReduce 程序 (jar),下载该程序的所有 Maven 依赖项(不在 docker 容器内)。
现在我的问题是:
如何将此 WordCount JAR 提交到 运行ning Docker 容器?
如何使用上传的文本文件 (HDFS) 运行 这个 MapReduce program/job (WordCount)?

如果您使用 8888 端口的端口映射启动您的容器,您将能够访问包含文件浏览器的 Hue。因此,您将能够轻松地将 HDFS 文件放入您的集群中。

要启动 map/reduce 作业,您需要将 jar 复制到容器中,因为 Cloudera 未在其容器中提供任何卷(至少,此处未记录:http://www.cloudera.com/documentation/enterprise/latest/topics/quickstart_docker_container.html ) 这可能具有挑战性。也许你可以尝试通过 scp 添加它。

我自己创建了一些 cloudera 容器,我按节点类型(masternode、datanode、edgenode)提供一个容器,我只是在 edgenode 中添加一个卷,这似乎是一个很好的想法。您可以在 docker 中心找到我的容器:https://hub.docker.com/r/loicmathieu/cloudera-cdh-edgenode/