Windows 环境下Docker 安装伪分布式 Hadoop
1、环境
Windows 11
Docker 20.0.2
2、拉取镜像
我选择 ubuntu20.04:
docker pull ubuntu:20.04

然后我们用命令看一下本地镜像:
docker images

3、启动容器
docker run -it IMAGE_ID bash

4、预备操作
4.1安装vim
4.1.1 更新软件包信息
apt-get update

4.1.2 安装vim
apt-get install vim

4.2 换源
4.2.1 备份镜像源设置文件
cp /etc/apt/sources.list /etc/apt/sources.list.bak
4.2.2 编辑镜像源设置文件
vim /etc/apt/sources.list
如果不出意外大家原来文件都应该如下图一样:

我们键入 ggdG 删除其中全部内容,复制下面的所有内容粘贴上去 (一次只可以选一个镜像源,根据你的情况选)
# 阿里源
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
# 清华源
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
# 中科大源
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
我这里选用阿里源,按 esc 键再 :wq 保存退出

4.2.3 重新更新一下软件包信息
apt-get update

4.3 同步上海时间
输入下面命令可以看到时间和咱们时间不一样,需要同步一下不然以后可能会遇到一些问题
date

4.3.1 安装 tzdata
apt-get install tzdata
然后按照提示选择 Asia 对应的序号,选完后会显示一堆新的提示—输入城市名,如 Shanghai,按照提示进行选择时区,就可以看到时间修改成功了:

然后使用下面命令:
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
将时区文件链接到本地时间文件上,以便系统能够正确地显示当前时间,防止系统重启后时区改变。
4.4 安装 ssh 配置免密登陆
4.4.1 安装 ssh
先用下面命令安装 ssh 服务
apt-get install openssh-server
4.4.2 设置允许 root 远程访问
打开配置文件
vim /etc/ssh/sshd_config
在#PermitRootLogin prohibit-password下添加如下内容
PermitRootLogin yes
RSAAuthentication yes
PubkeyAuthentication yes

重启ssh服务
service ssh restart
# 容器中不能调用 systmctl命令,故命令只在宿主机配置ssh时使用,容器中使用service
配置容器内的 root 用户密码,该密码可用于远程登录
passwd root
设置 ssh 开机自启,找到并打开文件/root/.bashrc
vim /root/.bashrc
在 .bashrc 末尾添加如下代码
service ssh start
退出使用如下命令让环境变量生效:
source /root/.bashrc
最后配置一下 ssh 免密登陆
ssh-keygen -t rsa #一直按回车键即可
cd ~/.ssh
cat id_rsa.pub >> authorized_keys
到这里咱们前期准备工作差不多完成了,exit 退出当前容器,然后我们可以保存镜像,以备以后的使用
docker commit CONTAINER_ID ssh_installed
5、配置远程连接
使用下面命令查看系统内有哪些镜像:
docker images

选择上一步保存的镜像并生成容器,在这过程还要做端口映射,例如:
docker run -it -d --name [container-name] -p 8088:80 [image-name]
我这里用的是下面命令,把这个容器命名为 hadoop,将容器内的 22 端口映射到宿主机的 50001 端口:
docker run -it -d --name hadoop -p 50001:22 ssh_installed
我们可以看到,我们需要的容器正在运行中了:

现在就可以设置远程连接了,在这里我选择 xshell 作为远程连接工具,填入如下信息:


这里的 root 密码是咱们在步骤 4.4.2 中设置的 root 的密码,设置完成之后,点击连接,可以看到顺利连接上了:

后续操作和虚拟机配置 hadoop 基本一致,题主有空完善(先埋下坑以后再填),或者客官可以移步题主另一篇博客参考一下:Ubuntu下搭建伪分布式从0开始安装Hive详细教程
Windows 环境下Docker 安装伪分布式 Hadoop的更多相关文章
- Windows环境下docker的安装与配置
Docker是一种容器技术,可以在操作系统中隔离出若干个独立的程序运行环境,这些环境既可以共享宿主机的资源,另一方面他们之间相互独立,互不影响,也不会对宿主机的环境产生影响.与虚拟化技术不同的是,Do ...
- 4.windows环境下如何安装memcached教程(转载+自己整理)
Memcached 是一个开源免费高性能的分布式内存对象缓存系统,能够加快网站访问速度和减轻数据库压力,本文向大家介绍下windows环境下如何安装memcached.百度经验:jingyan. ...
- windows环境下如何安装memcached教程
Memcached 是一个开源免费高性能的分布式内存对象缓存系统,能够加快网站访问速度和减轻数据库压力,本文向大家介绍下windows环境下如何安装memcached. 工具/原料 memcach ...
- 01.1 Windows环境下JDK安装与环境变量配置详细的图文教程
01.1 Windows环境下JDK安装与环境变量配置详细的图文教程 本节内容:JDK安装与环境变量配置 以下是详细步骤 一.准备工具: 1.JDK JDK 可以到官网下载 http://www.or ...
- GITHUB个人博客搭建-Pelican 在Windows环境下的安装及配置
GITHUB个人博客搭建-Pelican 在Windows环境下的安装及配置 前言 此篇博客主要为Pelican在Windows平台下的配置安装所写,在此过程中主要参考资料烟雨林博客.poem_of_ ...
- docker在Windows环境下的安装
Windows环境下安装 docker有两种安装包 一.Docker for Windows(目前只能在 64 位的 Windows10 专业版.企业版.教育版下才能安装) 二.Docker Tool ...
- Windows 环境下 Docker 使用及配置
原文引用: https://www.cnblogs.com/moashen/p/8067612.html 我们可以使用以下两种方式在Windows环境下使用docker: 1. 直接安装: Docke ...
- [原创]python MySQLdb在windows环境下的安装、出错问题以及解决办法
版权声明:本文为博主原创文章,未经博主允许不得转载. 问题:windows下安装MySQLdb的方法 解析:python没有php那种集成环境,比如wamp那种集成软件直接把所有需要的东西全部一次性搭 ...
- ubuntu环境下docker安装步骤
本文是根据docker官方文档翻译,原文:https://docs.docker.com/engine/installation/linux/ubuntulinux/ Docker 支持以下 Ubun ...
- Windows环境下的安装gcc
Windows具有良好的界面和丰富的工具,所以目前linux开发的流程是,windows下完成编码工作,linux上实现编译工作. 为了提高工作效率,有必要在windows环境下搭建一套gcc,gdb ...
随机推荐
- 迁移学习(SPI)《Semi-Supervised Domain Adaptation by Similarity based Pseudo-label Injection》
论文信息 论文标题:Semi-Supervised Domain Adaptation by Similarity based Pseudo-label Injection论文作者:Abhay Raw ...
- 5.mapper出错原因
1.总结:前个星期mapper出错,很大原因是自己的项目结构创建有问题,大项目下应该是spring init那种项目结构形式,但是在创建多模块的时候应该是使用moudle形式的项目结构: 所以自己在运 ...
- 补五月三号java基础知识
1.泛型技术可以通过一种类型或方法操纵各种不同类型的对象,同时又提供了编译时的类型安全保证.2.容器(即集合)是以类库形式 提供的多种数据结构,用户在编程时可直接使用3.泛型其实质就是将数据的类型参数 ...
- 从ajax到跨域引发的相关面试题总结
转载请注明出处: 1.ajax异步和同步的区别 Ajax是一种基于JavaScript语言和XMLHttpRequest对象的异步数据传输技术,通过它可以使不用刷新整个页面的情况下,对页面进行部分更新 ...
- nginx自定义负载均衡及根据cpu运行自定义负载均衡
转载请注明出处: 1.nginx如何自定义负载均衡 在Nginx中,可以通过配置文件自定义负载均衡策略.具体步骤如下: 首先,在Nginx配置文件中定义一个upstream模块,并设置负载均衡策略和后 ...
- Docker构建镜像踩坑日记
从Github上拉取python项目后,运行dockerfile构建镜像失败,一步步查找原因 主要原因就是国内下载各种依赖超时,以下提供pip.apt.pipenv镜像解决方案 pip更换国内镜像 这 ...
- 从案例中详解go-errgroup-源码
一.背景 某次会议上发表了error group包,一个g失败,其他的g会同时失败的错误言论(看了一下源码中的一句话The first call to return a non-nil error c ...
- I-o-C 一篇概览
一.ioC 容器和 Bean介绍 IoC(Inversion of Control )也被称之为 DI(dependency injection),名称侧重点略有不同. 所谓控制翻转即对象通过构造函数 ...
- selenium 多窗口处理与网页frame
多窗口处理 点击某些链接,会重新打开一个窗口,对于这种情况.想在薪页面操作,就得先切换窗口了. 获取窗口得唯一标识用句柄表示,所以只需要切换句柄,就可以在多个页面进行操作了 1. 先获取到当前得窗口句 ...
- 2020-11-23:go中,s是一个字符串,s[0]代表什么?是否等于固定字节数?
福个答案2020-11-23:Golang 的字符串(string)是合法的 UTF-8 序列,这就涉及到了两种不同的遍历方式,一种是按照 Unicode 的 codepoint 遍历,另一种是把 s ...