使用 Docker Desktop 安装 Centos 系统

本文详细介绍了如何使用DockerDesktop安装和管理CentOS镜像,包括拉取镜像、运行容器、配置SSH访问以及设置VNC服务。此外,还提到了在CentOS中更新yum源和安装SSH服务的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、前言

由于 Docker 是一个容器,它支持在一个服务器进行多服务部署,并且还能保持服务的独立性,那么,在Docker 上的运用时 我们也是可以 独立部署多个系统来做不同是其他,这样环境独立的情况下,也就不会造成一下不必要的问题。

二、使用 Docker Desktop 安装 Linux 系统

CentOS(Community Enterprise Operating System)是 Linux 发行版之一,它是来自于 Red Hat Enterprise Linux(RHEL) 依照开放源代码规定发布的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以 CentOS 替代商业版的 Red Hat Enterprise Linux 使用。

1、安装 Docker Desktop

请看这里:Docker Desktop 安装使用教程

2、使用 Docker Desktop 安装 Centos 镜像

2.1、 查看 CentOS 镜像

docker官方地址:https://docs.docker.com/engine/install/centos/
访问 CentOS 镜像库地址: https://hub.docker.com/_/centos?tab=tags

在这里插入图片描述在这里插入图片描述

# 查看centos有哪些镜像
docker search centos

在这里插入图片描述

2.2、 下载 CentOS 镜像

注意:Centos 不同版本之间 操作命令有些会稍微有所不一样,会出现某些命令无法使用的情况。
访问 CentOS 镜像库地址:https://hub.docker.com/_/centos?tab=tags&page=1。
可以通过 Sort by 查看其他版本的 CentOS 。默认是最新版本 centos:latest 。

# 拉取最新版本centos镜像
docker pull centos

# 拉取centos7镜像
docker pull centos:7

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

2.3、 下载 CentOS 镜像

# 查看本地镜像
 docker images
# 查看更详细的centos信息
docker inspect centos

在这里插入图片描述

这个时候也可以在Docker Desktop 的 images 进行查看

在这里插入图片描述

2.4、运行容器,并且可以通过 exec 命令进入 CentOS 容器。

# 运行容器,并且可以通过 exec 命令进入 CentOS 容器
docker run -itd --name centos-test centos:centos7

在这里插入图片描述

也可以在Docker Desktop 的 Containers 进行运行

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.5、安装成功

# 通过 docker ps 命令查看容器的运行信息
docker ps

在这里插入图片描述

2.6、运行容器,通过 exec 命令 创建、设置端口号并启动 CentOS 容器。

我在这一步的时候使用 Docker Desktop 不知道为什么设置不了端口号,最后还是只能在exec 命令操作
参数说明:

  1. 参数–name:设置container容器的名称,我们设置成centos8,如果为空则随机生成。
  2. 参数-p:指定端口号,2060是宿主机的端口号,22是container的端口号,相当于把容器的22端口号映射到宿主机的2060。
  3. 参数-v:设置主机与container的共享目录:
    主机绝对路径:container绝对路径,我们这里把宿主机的/home/jason目录,映射到container的/home/centos,你在容器里
    是可以查到这个目录的。
  4. 参数centos:对应的是镜像的名称。
# 创建并启动centos8容器
docker run -itd -p 2060:22 -v /home/jason:/home/centos --name centos8 --privileged centos /usr/sbin/init
# 指定centos7容器的名称为centos-desktop-vnc,并暴露宿主机的5901来连接vnc
docker run --name centos-desktop-vnc --privileged -d -p 5901:5901 --ulimit memlock=-1 -td centos:7 /usr/sbin/init

在这里插入图片描述

2.7、进入容器环境

# 进入到docker(centos8)容器控制台
docker exec -it centos8 /bin/bash
# 进入到docker(centos7)容器控制台
docker exec -it centos-desktop-vnc bash

在这里插入图片描述

3、使用 SSH 连接 Docker 镜像的 Linux 系统

3.1、配置appstream 仓库 镜像列表URL

centos官方停止了对centos8的维护,使用yum命令时候 会提示 appstream 镜像仓库没有url地址

在这里插入图片描述

#repos 目录
cd /etc/yum.repos.d/

#修改centos 设置url地址
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*

#手动缓存 不执行也可以
yum makecache

#更新Yum 
 yum update -y

#到这里 yum 命令可以正常执行了

在这里插入图片描述

3.2、安装 net-tools

在这里插入图片描述

3.3、给centos安装ssh

# 检查有无安装ssh
yum list installed | grep openssh-server
#安装 密码和ssh服务
yum install passwd openssl openssh-server -y
​
# 使用vim 查看 /etc/ssh/sshd_config 文件
#  PermitRootLogin 需要打卡
# 监听端口:22端口 和启动的端口对应
# 开启用户名密码验证关键字:PasswordAuthentication
# 以上配置一般是默认的,最好查看一下

在这里插入图片描述

# 启动 sshd
systemctl start sshd 
# 配置开机启动
systemctl enable sshd

在这里插入图片描述

# 配置密码  需要确认两次 且密码不可见
 passwd 
# 到此 docker下安装centos就完成了,且配置了ssh访问

在这里插入图片描述

3.4、Xshell 访问 centos

详情 请查看这里:xshell和xftp下载安装以及使用

在这里插入图片描述在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

3.5、FinalShell 访问 centos

详情 请查看这里:超级详细的 FinalShell 安装 及使用教程

在这里插入图片描述
在这里插入图片描述

4、配置vnc服务端

关于这个的细节作者就不细讲了,如果有需要可以自己去找其他相关资料

4.1、配置vnc服务端

#安装vnc server、vim、net-tools
yum -y install tigervnc-server tigervnc-server-module vim net-tools

4.2、配置vnc server

#复制配置文件模板
cp /lib/systemd/system/vncserver@.service /lib/systemd/system/vncserver@:1.service
设置生效用户-修改配置文件
vim /lib/systemd/system/vncserver@:1.service

将配置文件的修改为root,由于root的home路径是/root,不是/home/root,因此注意修改PIDFILE的路径 改好之后如下

[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=forking

#Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/sbin/runuser -l root -c "/usr/bin/vncserver %i"
PIDFile=/root/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'

[Install]
WantedBy=multi-user.target
修改vnc server密码
vncpasswd
生效vnc配置
systemctl daemon-reload

4.3、配置vnc开机启动

#启动服务
systemctl start vncserver@:1
#设为开机启动
systemctl enable vncserver@:1
检查vnc server是否启动
netstat -lnpt|grep Xvnc

出现下图结果说明启动成功
在这里插入图片描述

4.4、关闭防火墙

#关闭防火墙
systemctl stop firewalld
#禁止防火墙开机启动
systemctl disable firewalld

4.5、下载并使用VNC

在这里插入图片描述

到此 就结束了!

使用Docker安装CentOS系统通常涉及以下几个步骤: 1. **安装Docker**: - 首先,确保您的系统已经安装了最新版本的 Docker Desktop 或者 Docker CE (Community Edition),可以在官方文档 [docker.com/get-docker](https://www.docker.com/products/docker-desktop) 中找到适合您操作系统安装指南。 2. **获取CentOS镜像**: 在Docker Hub上,有一个官方的CentOS镜像`centos:latest`或特定版本如`centos:7`或`centos:8`。你可以通过命令行运行`docker pull centos`来下载最新的镜像。 3. **运行容器**: 使用`docker run`命令启动一个新的容器,例如: ```sh docker run -itd --name my-centos-container centos /bin/bash ``` `-itd`选项分别代表交互式、挂起并返回( detached mode),`--name`用于指定容器名称以便于管理,`centos`是镜像名,`/bin/bash`会启动bash shell供你在里面操作。 4. **配置网络和存储卷**: 如果需要持久化数据,可以创建数据卷(`-v`),例如: ```sh docker run -itd --name my-centos-container -v $PWD/data:/data centos /bin/bash ``` 这样容器内的/data目录会映射到宿主机的$PWD/data目录。 5. **登录容器并操作**: 登录已启动的容器,执行 `docker exec -it my-centos-container bash`。现在你就可以在 CentOS 环境中工作了。 6. **停止和删除容器**: 当你完成操作后,可以用 `docker stop my-centos-container`停止它,然后用 `docker rm my-centos-container` 删除容器及其所有数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT小郭.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值