使用 Docker Desktop 安装 Centos 系统

news2024/9/23 23:21:53

一、前言

由于 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

在这里插入图片描述

到此 就结束了!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/728132.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

投票评选活动小程序v2-用户报名图片上传

投票评选活动小程序v2-用户自行报名收集材料页面 主要收集项目或者作品图片及其描述,可以在后台进行统一录入,也可以是在用户界面,让用户自行报名上传。 这里开发了一个“我要报名”页面,在首页点击“我要报名”按钮跳转过来。 …

精耕细作的运维资源成本管控方法-互联网企业的Finops思考与实践

当前,降本增效成为各大互联网公司的重要方向,IT成本则占据了互联网成本的大头。随着IT资源成本花费越来越高,很多公司意识到掌握管控成本和优化成本的重要性。 如何有效的降本?如何做好成本的洞察管控?如何掌握资源成…

5000字干货!让你一次搞懂什么是高保真原型

在产品设计领域,尤其是在用户体验设(UX)中,高保真原型至关重要。它是一种几乎按照产品最终的呈现模样制作出来的原型,包含产品的细节、真实的交互和完善的UI。正因为高保真原型最接近真实产品,因此成为企业…

使用Streamlit和OpenAI API构建视频摘要

本文提供了使用Streamlit和OpenAI创建的视频摘要应用程序的概述。该程序为视频的每个片段创建简洁的摘要,并总结视频的完整内容。 要运行应用程序,需要安装以下依赖项: Python(3.7或更高版本)StreamlitOpenAI API密钥llama_indexyoutube_transcript_api…

Vue3+Vite+Pinia+Naive项目搭建之二:scss 的安装和使用

前言 如果对 vue3 的语法不熟悉的,可以移步 Vue3.0 基础入门,快速入门。 1. 安装依赖 yarn add sass -D // or npm install sass -D 2. 页面样式初始化 reset.scss /* 新建 src/assets/style/reset.scss */ /* 页面样式初始化 */ html, body, div, s…

Linux VS Windows 孰优孰劣?

目录 1. 开源 vs. 闭源:2. 用户界面:3. 软件兼容性:4. 系统安全性:5. 社区支持和文档资源: Linux和Windows是两个主要的操作系统,它们在很多方面都有不同的特点和使用体验。以下是对Linux和Windows进行比较…

python_day1

单行注释规范,#号后留一空格 # 单行注释多行注释,三个单引号或三个双引号 duo hang zhu shi 赋值给变量时为字符串 n 123print(n)查看类型:type() a 111 b "111" if a b:print("true")print(a)print(type(a)) el…

Ubuntu20.04+Docker+ROS Noetic 可视化容器管理工具Portainer

1. 安装docker 官网教学安装网址:Install Docker Engine on Ubuntu | Docker Documentation 2. 安装noetic镜像 ros镜像网址 https://hub.docker.com/r/osrf/ros https://hub.docker.com/r/osrf/ros/tags sudo docker pull osrf/ros:noetic-desktop-full 3. 创…

高效提升控制效率 | 基于ACM32 MCU的LED灯箱控制器方案

前言 LED灯箱上各种文字、图案有序跳跃、交替辉映,产生强烈的视觉冲击力,被广泛应用于商场、美容美发、宾馆、娱乐场所等地方。 锁存器的工作原理 在LED和数码管显示方面,要维持一个数据的显示,往往要持续的快速的刷新。尤其…

vant省市区引入@vant/area-data官方数据报错问题解决

我们依照官方流程引入数据 yarn add vant/area-dataimport { areaList } from vant/area-data;Page({data: {areaList,}, });我们正常引入后会发现报错为 module ‘node_File/area-data/dist/data1.js’ is not defined 按照网上的vant-weapp的Area 省市区选择组件无法显示进行…

Segmentation fault (core dumped)问题解决

torch:1.10.0cu111 pandas:1.3.3 报错: 定位: df pd.DataFrame(columns[epoch, model.sigma1.cpu().detach().numpy(), model.sigma2.cpu().detach().numpy(),model.sigma3.cpu().detach().numpy(),iter,avg_ssim, avg_psnr,model.current…

LeetCode 75 —— 98. 验证二叉搜索树

LeetCode 75 —— 98. 验证二叉搜索树 一、题目描述: 给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下: 节点的左子树只包含 小于 当前节点的数。节点的右子树只包含 大于 当前节点的数。所有左子…

【MYSQL高级】Mysql的SQL性能分析【借助EXPLAIN分析】

性能分析 要说sql有问题,需要拿出证据,因此需要性能分析 Mysql查询优化器(Mysql Query Optimizer) Mysql中有专门负责优化SELECT语句的优化器模块,主要功能:通过计算分析系统中收集到的统计信息&#xf…

Mali Offline Compiler - 官方视频教学 - 笔录

文章目录 目的Mali Offline Compiler 使用实例视频分析 shadermalioc 命令制定你想要分析的 shader制定你想要分析的着色器对应的 GPU实例解析内容硬件结构 & 驱动 & Shader 类型信息寄存器、是否堆溢出、16-bit 算术占比寄存器的使用量减少浮点精度优化堆溢出与否16-b…

基于Java+vue前后端分离学习交流论坛设计实现(源码+lw+部署文档+讲解等)

博主介绍:✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专…

easyExcel实现动态导出需要的字段列

easyExcel实现动态导出需要的字段列 实体概况 package excel;import com.alibaba.excel.annotation.ExcelIgnore; import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.alibaba.excel.annotation.…

C++学习笔记-第11单元 标准模板库介绍

第11单元 标准模板库介绍 文章目录 第11单元 标准模板库介绍单元导读11.1 标准模板库(STL)基础11.2 STL容器简介11.3 STL迭代器简介11.3.1 使用迭代器访问容器中的元素11.3.2 迭代器类型11.3.3 迭代器支持的运算符操作 11.4 顺序容器11.4.1 顺序容器的逻辑结构11.4.2 代码展示s…

Vue组件库Element-快速入门

目录 什么是Element 快速入门 什么是Element Element:是饿了么团队研发的,一套为开发者、设计师和产品经理准备的基于Vue2.0的桌面端组件库组件:组成网页的部件,例如超链接、按钮、图片、表单、表格、分页条等官网:…

avoidLabelOverlap无效果,echarts环形标签重叠,echarts数据重叠

在开发echarts环形图时,会出现数据重叠的现象.比如下面这情况.不可能为了数据将环形图变得太小,这样环形图太小也不美观.后来在官网上查找有一个avoidLabelOverlap属性,结果加上去后也没啥用 解决方法: 除了加上面:avoidLabelOverlap:true以外,还要加另外一个属性:minAngle:1…

win10系统中Pensieve(Sigcomm17)算法部署与运行

win10系统中Pensieve算法部署与运行 一、环境配置1、Anaconda环境配置2、Pycharm安装3、Pensieve安装包配置4、Pensieve数据集生成5、Pensieve代码运行6、Pensieve代码修改 一、环境配置 1、Anaconda环境配置 下载并且安装 Anaconda 官网下载地址:https://www.ana…