
ruo91/hadoop本镜像提供 Apache Hadoop 2.x 版本的伪分布式模式部署,可快速搭建单节点Hadoop集群环境。伪分布式模式模拟了分布式集群的功能,所有Hadoop守护进程(NameNode、DataNode、ResourceManager、NodeManager等)运行在单个容器内,适用于开发、测试和学习Hadoop生态系统。
通过Docker Hub拉取并运行镜像:
bashdocker run -d --name="hadoop" -h "hadoop" \ -p 8042:8042 -p 8088:8088 -p 50070:50070 -p 50075:50075 -p 50090:50090 ruo91/hadoop:2.7.x
克隆源码仓库:
bashgit clone [***] /opt/docker-hadoop
切换到2.7.x分支:
bashcd /opt/docker-hadoop git checkout -b 2.7.x origin/2.7.x
构建镜像:
bashdocker build --rm -t hadoop:2.7.x /opt/docker-hadoop
运行构建的镜像:
bashdocker run -d --name="hadoop" -h "hadoop" \ -p 8042:8042 -p 8088:8088 -p 50070:50070 -p 50075:50075 -p 50090:50090 hadoop:2.7.x
| 端口 | 服务 | 说明 |
|---|---|---|
| 8042 | NodeManager | 节点管理器Web界面 |
| 8088 | ResourceManager | 资源管理器Web界面 |
| 50070 | NameNode | namenode Web界面 |
| 50075 | DataNode | datanode Web界面 |
| 50090 | SecondaryNameNode | 辅助namenode Web界面 |
容器root用户密码为hadoop,通过以下步骤登录:
获取容器IP地址:
bashdocker inspect -f '{{ .NetworkSettings.IPAddress }}' hadoop
SSH登录:
bashssh root@<容器IP地址>
登录容器后,启动所有Hadoop服务:
bashstart-all.sh
验证服务是否正常启动:
bashjps
正常输出应包含以下进程:
创建测试文件:
bashfor((i=0; i<10; i++)) do echo ${i}; done > test.log
上传文件到HDFS:
bashhdfs dfs -copyFromLocal test.log /
查看HDFS根目录文件:
bashhdfs dfs -ls /
预期输出:
Found 1 items -rw-r--r-- 3 root supergroup 20 <日期> /test.log
运行Hadoop内置的圆周率计算示例:
bashhadoop jar $HADOOP_PREFIX/share/hadoop/mapreduce/hadoop-mapreduce-examples*.jar pi 3 3
作业完成后将输出圆周率的估算值,类似:
Estimated value of Pi is 3.55555555555555555556
通过以下URL访问Hadoop各组件的Web管理界面:




manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务