这个镜像是我学习Hadoop时配置的模板镜像,基础镜像是Docker Hub网站上的ubuntu
docker image pull weicg/hadoop:1.3
镜像启动,以三台Hadoop机器为例
docker network create hadoop
docker container run -it --name=hadoop102 -p 9870:9870 -p 9864:9864 -v <host path>:/opt/hadoop-3.1.3/etc --net=hadoop weicg/hadoop:1.3 bash
docker container run -it --name=hadoop103 -p 8088:8088 --net=hadoop weicg/hadoop:1.3 bash
docker container run -it --name=hadoop104 -p 9868:9868 --net=hadoop weicg/hadoop:1.3 bash
其中,hadoop102包含DataNode和NameNode,同时暴露Web操作页面端口,并挂载配置文件;hadoop103包含DataNode和ResourceManager;hadoop103包含SecondaryName和DataNode。新建的hadoop网络是为了将上述三台hadoop机器放入同一个网络下,同时hadoop网络自带了主机名转换,不需要配置DNS文件
最初版本,在ubuntu镜像的基础上,安装了vim、网络工具和ping命令,同时解压jdk8u341和hadoop-3.1.3的压缩包在/opt/mudole目录内,并在/etc/profile.d目录下新建了my_env.sh文件,写入了环境变量的配置
source /etc/profile/etc/init.d/ssh start,确保在新建、启动和重启容器时开启sshdHDFS_NAMENODE_USER、HDFS_DATANODE_USER、HDFS_SECONDARYNAMENODE_USER、YARN_RESOURCEMANAGER_USER、YARN_NODEMANAGER_USER这五个环境变量,值全部为rootubuntu重新配置Hadoop集群镜像,镜像大小从原本的2.78G缩小为1.48G,安装编辑工具Vim和文件同步工具rsync,没有安装网络工具和ping命令/etc/init.d/ssh start命令启动SSHhadoop,密码为hadoop,root密码仍为root;需要切换hadoop用户启动Hadoop集群,没有配置原本和root用户相关启动集群的五个环境变量source /etc/profile;在/home/hadoop/.bashrc文件内写入source /etc/profile.d/env.shContent type
Image
Digest
sha256:12988f196…
Size
571.1 MB
Last updated
about 4 years ago
docker pull weicg/hadoop:1.3