Windows Docker搭建CentOS环境,并实现Xshell连接

转载请注明出处❤️

作者:测试蔡坨坨

原文链接:caituotuo.top/48d77133.html


你好,我是测试蔡坨坨。

作为一名测试人员,在日常工作中或多或少都会接触到Linux服务器。

获取Linux服务器的途径也有很多,比如可以通过购买云服务器(阿里云、华为云、腾讯云等)和虚拟机(VMWare、VirtualBox等)的方式获取,除了这两种方式之外,我们还可以使用Docker的方式来快速搭建Linux环境。

与虚拟机的方式相比,使用Docker搭建CentOS的优势主要体现在以下几个方面:

  • 资源利用率:Docker容器相对于虚拟机更轻量级,启动速度更快,并且在物理主机上占用的资源更少。与虚拟机相比,Docker容器可以更高效地利用系统资源,从而使得在同一台主机上运行更多的容器实例成为可能。
  • 部署速度:Docker容器可以通过镜像快速部署和启动。与虚拟机相比,启动Docker容器几乎可以在秒级完成,而虚拟机需要较长的启动时间。这对于快速部署和弹性伸缩非常有益,特别是在面对高流量和变化需求的场景下。
  • 系统开销:Docker容器共享宿主机的内核,减少了额外的系统开销。相比之下,虚拟机需要模拟整个操作系统,每个虚拟机都需要独立的内核和操作系统资源,这导致了更高的系统开销和性能损耗。
  • 管理和操作简便:Docker提供了丰富的命令行工具和API,使得容器的管理和操作变得更加简便。使用Docker可以快速构建、修改、启动和停止容器,以及管理容器的网络、存储和配置等。相比之下,虚拟机管理软件通常较为复杂,并且需要专门的操作和配置。

本篇将介绍如何在Windows Docker上快速搭建CentOS环境,并实现Xshell连接。

1. 新建并启动容器

使用 docker run 命令安装并运行 CentOS 实例:

1
docker run -itd -p 50022:22 --name my_centos7 --privileged=true centos:centos7 /usr/sbin/init

参数解释:

OPTIONS 作用
-i 以交互模式运行容器,通常与 -t 同时使用
-t 为容器重新分配一个伪输入终端,通常与 -i 同时使用
-d 后台运行容器,并返回容器ID
50022:22 把docker上centos的22端口映射到本地50022端口,端口号可以自己指定
–name my_centos7 为容器指定一个名称,这里容器名为my_centos7,可以自己指定
–privileged=true 开启权限,要Xshell连接,需要创建一个有访问特权、映射端口的容器
centos:centos7 前面的centos表示软件源的名称,后面是版本标签(版本在dockerhub上查询)

2. 进入运行的容器

使用 docker exec 命令进入 CentOS 容器:

1
docker exec -it my_centos7 /bin/bash

参数解释:

OPTIONS 作用
-i 即使没有附加也保持STDIN 打开
-t 分配一个伪终端
my_centos7 容器名称

3. 安装常用工具包

  1. net-tools

    安装 net-tools 工具包(安装后可使用 ifconfig 命令):

    1
    yum install net-tools

  2. passwd

    安装 passwd 工具,安装后可修改用户密码(CentOS安装完成后默认没有密码,为了方便使用Xshell等工具连接CentOS,这里给root用户设置一个密码):

    1
    yum install passwd
    1
    passwd root

4. Xshell连接CentOS

  1. 安装ssh服务:

    1
    yum install openssh-server

  2. 启动ssh服务:

    1
    systemctl start sshd.service

  3. 设置ssh服务开机自启:

    1
    systemctl enable sshd.service

  4. 在Windows命令行窗口输入ipconfig,查看Docker宿主ip:

  5. 使用Xshell连接