在window中安装Docker,并生成CentOS镜像
下载并安装windows docker
-
修改镜像本地保存地址
-
修改境内仓库地址
注册docker账号,并登陆客户端
生成Dockerfile
# 此镜像基于centos7.6.1810制作而成 FROM centos:7.6.1810 ENV container docker #制作人 maoxx MAINTAINER maoxx <myfriendfly@126.com> #删除文件 RUN (cd /lib/systemd/system/sysinit.target.wants/; for i in *; do [ $i == systemd-tmpfiles-setup.service ] || rm -f $i; done); \ rm -f /lib/systemd/system/multi-user.target.wants/*;\ rm -f /etc/systemd/system/*.wants/*;\ rm -f /lib/systemd/system/local-fs.target.wants/*; \ rm -f /lib/systemd/system/sockets.target.wants/*udev*; \ rm -f /lib/systemd/system/sockets.target.wants/*initctl*; \ rm -f /lib/systemd/system/basic.target.wants/*;\ rm -f /lib/systemd/system/anaconda.target.wants/*; #安装程序 # 初始化程序 RUN yum -y install initscripts #安装网络工具 RUN yum -y install net-tools #安装ip工具 RUN yum -y install iproute RUN yum -y install vim-enhanced RUN yum -y install sudo passwd RUN yum -y install iptables #安装ssh服务 RUN yum -y install openssl openssh-server #ssh密钥 RUN ssh-keygen -q -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key -N '' RUN ssh-keygen -q -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N '' RUN ssh-keygen -t dsa -f /etc/ssh/ssh_host_ed25519_key -N '' RUN sed -i "s/#UsePrivilegeSeparation.*/UsePrivilegeSeparation no/g" /etc/ssh/sshd_config RUN sed -i "s/UsePAM.*/UsePAM no/g" /etc/ssh/sshd_config RUN sed -i "s/#Port.*/Port 20022/g" /etc/ssh/sshd_config RUN echo "root:123" | chpasswd #端口暴露为20022 EXPOSE 20022 VOLUME [ "/sys/fs/cgroup" ] CMD ["/usr/sbin/init"]
执行dockerfile建立镜像
docker image build -t centos_hadoop .
.代表文件路径
文件默认为Dockerfile,没有后缀
生成新容器
docker run --privileged -d -v /sys/fs/cgroup:/sys/fs/cgroup:ro -p 20022:20022 centos_hadoop
privileged 特别授权
-d 后台启动
-v 挂载命令
-p 访问端口设置为20022
centos_hadoop 启动镜像名称