作者:cokey61
- 💻 Windows10专业版
🌏一、安装Docker
- 勾选Hyper-V
Docker支持Windows 10 Pro且需要开启Hyper-v
控制面板->程序和功能->启用或关闭Windows功能 将下图红框部分选中点击确定

- 下载docker
在docker官网下载docker并安装,安装成功后桌面会出现这个图标

- 注册docker并登录
- 配置加速源
进入阿里云官网搜索容器镜像服务进入

点击控制台

选择镜像加速,复制镜像加速地址

打开DockerDesktop ,点击设置>Docker Engine,在registry-mirrors一栏后加入阿里云复制的镜像加速地址即可


- 查看Docker版本
windows命令行win+r,输入cmd并回车进入终端,输入查看版本,无异常报错信息则安装成功
docker --version
- 登录Docker
终端输入命令登录
docker login docker.io
🧭 二、安装CentOS及相关工具并配置环境
拉取centos最新镜像
docker pull centos
查看本地镜像
docker images
运行容器
–privileged: 可以使container内的root拥有真正的root权限 -d: 后台运行容器,并返回容器ID; -i: 以交互模式运行容器,通常与 -t 同时使用; -p: 指定端口映射,格式为:主机(宿主)端口:容器端口 -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用; –name=”myCentos”: 为容器指定一个名称,如果不写,会自动生成一个名字,如modest_bouman; /usr/sbin/init:因为后面会使用systemctl启动sshd服务,所以添加该项,否则会报错Failed to get D-Bus connection: Operation not permitted
docker run -itd -p 50022:22 --privileged --name myCentos centos /usr/sbin/init
- 进入容器
因为/usr/sbin/init覆盖了默认的 /bin/bash,所以不能使用docker attach进入容器了,需要使用以下方式进入。
docker exec -it myCentos /bin/bash
- 安装必要工具
安装网络工具,可以使用ifconfig查看网卡ip信息
yum -y install openssh-clients
安装ssh服务
yum -y install openssh-server
安装ssh客户端
yum -y install net-tools
安装passwd,修改root用户密码
yum -y install passwd
- 修改ssh配置
vi /etc/ssh/sshd_config
修改以下配置,如注释掉的则解开注释
Port 22ListenAddress 0.0.0.0ListenAddress ::PubkeyAuthentication yesGSSAPIAuthentication yesGSSAPICleanupCredentials yesUsePAM no
添加自启动并启动ssh服务
cd /binsystemctl enable sshd.servicesystemctl start sshd.service
设置root管理员密码
passwd root
使用xshell或finalshell连接
新开终端输入ipconfig查看本机ip
ipconfig

192.168.124.17是docker宿主机(即windows)的ip,启动docker时映射的端口号是50022,所以需要使用这个端口连接ssh服务,点击连接按钮后再弹出的窗口输入之前设置的root密码,即可完成连接

🔧 三、保存镜像
使用exit退出centos的shell,进入宿主机shell
exit
查看运行中的容器
docker ps -a
提交镜像
docker commit -m "myCentos with ssh" c6d312055727 cokey61/centos_with_ssh:v1
查看本地镜像
docker images
- 给镜像打标签(如果镜像标签无误则不需重新打标签)
fda05b8a62b8为镜像id,cokey61为dockerhub用户名,centos_with_ssh为起名,v1为版本号
docker tag fda05b8a62b8 cokey61/centos_with_ssh:v1
推送镜像
docker push docker.io/cokey61/centos_with_ssh:v1
查看dockerhub后台已经有了这个镜像
