docker介绍与详细安装

1 docker 介绍

1.1 虚拟化

 在计算机中,虚拟化(英语:Virtualization)是一种资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以比原本的组态更好的方式来应用这些资源。这些资源的新虚拟部份是不受现有资源的架设方式,地域或物理组态所限制。一般所指的虚拟化资源包括计算能力和资料存储。在实际的生产环境中,虚拟化技术主要用来解决高性能的物理硬件产能过剩和老的旧的硬件产能过低的重组重用,透明化底层物理硬件,从而最大化的利用物理硬件  对资源充分利用虚拟化技术种类很多,例如:软件虚拟化、硬件虚拟化、内存虚拟化、网络虚拟化(vip)、桌面虚拟化、服务虚拟化、虚拟机等等。# kvm,VMware,openstack,docker,k8s-kvm,vmware:虚拟化软件-openstack,阿里飞天:虚拟化软件管理web项目 -- python-docker:容器化-k8s:容器管理编排

在这里插入图片描述

1.2 docker

Docker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目。它基于 Google 公司推出的 Go 语言实现。 加了 Linux 基金会,遵从了 Apache 2.0 协议,项目代码在上进行维护。容器化技术,区分于虚拟机,又类虚拟机,兼具虚拟机隔离的优点,又有速度快的优点
容器资源隔离,网络隔离
把容器当成一个虚拟机即可docker 容器管理 -docker swarm-k8sDocker 的基础是 Linux 容器(LXC)等技术

1.3 docker和其他虚拟机比较

# docker 不需要虚拟化出 操作系统这一层---》更轻量级--占空间更小---》还能实现隔离# 虚拟机技术的缺点:1.资源占用太多2.冗余步骤多3.启动很慢# 容器化技术
1.服务器资源利用率高
2.比较轻量化
3.打包镜像测试,一键运行比较Docker和虚拟机技术不同:
​ 1.传统虚拟机,虚出一套硬件,运行一个完整的操作系统,然后在这个系统上安装和运行软件
​ 2.容器内的应用之间运行在 宿主机的内容,容器是没有自己的内核的,也没有虚拟我们的硬件,所以久轻便了
​ 3.每个容器间是互相隔离的,每个容器内都有属于自己的文件系统,互不影响
​ 4.安全性,docker的安全性更弱,
​ 5.与虚拟机相比,docker隔离性更弱,docker属于进程之间的隔离,虚拟机可实现系统级别隔离​ 7docker创建时秒级的,docker的快速迭代性,无论是开发、测试、部署都可以节约大量时间

在这里插入图片描述

1.4 docker架构

# cs 架构---》客户端服务端- c 端:用户操作,输入命令- s端:接收用户命令,执行-c、s通信,使用http协议,遵循restful规范-mysql:tcp---》自定义的  -redis:tcp---》自定义的  # 架构1 client:客户端,输入命令2 服务端:containers:容器images:镜像--》从注册中心下来下来的3 register:注册中心-放了很多镜像--》redis,nginx,mysql

在这里插入图片描述

2 docker安装和配置

# 1 linux   win 安装
# 2 win:https://www.docker.com/products/docker-desktop/  下载 docker-desktop-一路下一步安装# 3 centos 7.9 安装# https://www.vmware.com/content/vmware/vmware-published-sites/cn/products/workstation-pro/workstation-pro-evaluation.html.html.html-视频,软件:vmware ,镜像文件# 4 创建一个centos 7.9的虚拟机,在这个基础上讲docker# 5 如果之前装过,卸载
# yum remove docker docker-common  docker-selinux docker-engine
# rm -rf /var/lib/docker
yum update  # 更新yum仓库# 6 安装
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install docker-ce -y# 7 查看安装的版本
docker --version# 8 目前我们只装了 docker-ce,-只有:c  和 s端-没有docker-compose-没有图形化解码-跟docker-destop的区别# 9 启动docker
systemctl status docker
systemctl start docker# 10 镜像--》从远程下载下来的---》hub.docker.com -->仓库下的-有非常多镜:可以搜索,搜到以后,镜像有不同版本-目前:访问不到了,拉去不下来-配置:国内镜像站:阿里云-https://cr.console.aliyun.com/cn-shanghai/instances/mirrorssudo mkdir -p /etc/docker # 如果有,就不需要创建了vi /etc/docker/daemon.json # 加入{"registry-mirrors": ["https://x1566319.mirror.aliyuncs.com"]}# 按 esc# 输入  :wq  敲回车# 保存退出systemctl daemon-reload   # 重新加载docker配置systemctl restart docker  # 重启docker

image-20240619163429791

先创建在克隆

image-20240619163017427

3 docker镜像操作

3.1 镜像和容器

# 镜像:images-一堆文件---》目前咱们从register---》下载---》放在宿主机(centos 7.9机器)-类比:虚拟上装系统- 操作系统文件 xx.iso--->装在虚拟机上- 镜像你当成 xx.iso 操作系统文件-把iso装在不同虚拟机中---》启动---》多台有操作系统的机器
# 容器:container-镜像运行---》运行成容器-类比:-容器当成一个正在运行的操作系统-一个镜像,可以运行成多个容器# python面向对象类:镜像对象:实例化得到多个对象,每个对象间独立的# 以后一个容器,你们当成 :一个操作系统+软件--》正在运行  

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

3.2 镜像操作

image-20240619210437900

# 0 搜索镜像-去网站搜:https://hub.docker.com/ -使用命令行搜:docker search mysql# 1 获取镜像,拉去镜像---》从register下载到本地--》阿里云镜像站--》加速拉取docker pull mysql:5.7 # 下载mysql 5.7镜像docker pull redis:latest # 下载redis最新的镜像docker pull nginx:latest  # 下载 nginx最新的镜像docker pull centos:centos7  # 下载 nginx最新的镜像# 2 查看镜像docker images# 3 删除镜像docker rmi redis:latest

创建虚拟机基本配置

Unbantu

安装unbantu22.04.4版本

image-20240702185109629

image-20240702185132990

image-20240702185144414

image-20240702185158356

image-20240702185220374

image-20240702185232631

image-20240702185242742

  • 这里需要用桥接网络

image-20240702185322560

image-20240702185334042

image-20240702185342919

image-20240702185352778

image-20240702185401760

image-20240702185410783

image-20240702185419784

然后进入需要安装ssh跟关闭防火墙才能进行ssh远程连接

# 查看防火墙状态
sudo ufw status#检查 SSH 服务状态:sudo service ssh status
#如果 SSH 服务未安装,您可以通过以下命令安装它:sudo apt-get update  # 更新软件包列表
sudo apt-get install openssh-server
#启动 SSH 服务:sudo service ssh start
#停止 SSH 服务:sudo service ssh stop
#重启 SSH 服务:sudo service ssh restart
#查看 SSH 服务的状态:sudo service ssh status
#允许 SSH 服务通过防火墙(如果您使用的是 UFW 作为防火墙):sudo ufw allow ssh
#如果您希望 SSH 在系统启动时自动启动,可以使用以下命令来启用它:sudo update-rc.d ssh defaults

CentOS7.9

image-20240619163959004

image-20240619164119083

image-20240619164300423

image-20240619164438298

image-20240619164504497

image-20240619164540654

image-20240619164607112

image-20240619164625921

image-20240619164651635

image-20240619164735557

image-20240619164802260

  • 选择安装系统

image-20240622132350734

  • 要下载镜像源

image-20240619174057245

image-20240622132038822

image-20240622132055474

image-20240622132105778

image-20240622131925922

  • 设置“root密码”->“完成”,等待安装

image-20240622132122507

  • 安装完成“重启”,启动后输入账号和密码

image-20240622132557268

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

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

相关文章

docker部署wg-easy和firefly

Background WireGuard是一种新型的VPN协议,它通过在内核层运行,提供高效、安全、简单和现代的VPN解决方案。wg-easy是一个专为简化 WireGuard VPN配置和管理而设计的工具,提供了界面化的管理,进一步降低WireGuard 的使用门槛,让用户无需深入了…

嵌入式Linux系统编程 — 6.7 实时信号

目录 1 什么是实时信号 2 sigqueue函数 3 sigpending()函数 1 什么是实时信号 等待信号集只是一个掩码,它并不追踪信号的发生次数。这意味着,如果相同的信号在被阻塞的状态下多次产生,它只会在信号集中被记录一次,并且在信号集…

利用谷歌云serverless代码托管服务Cloud Functions构建Gemini Pro API

谷歌在2024年4月发布了全新一代的多模态模型Gemini 1.5 Pro,Gemini 1.5 Pro不仅能够生成创意文本和代码,还能理解、总结上传的图片、视频和音频内容,并且支持高达100万tokens的上下文。在多个基准测试中表现优异,性能超越了ChatGP…

node 下载文件到网络共享目录

1、登录网络共享计算器 2、登录进入后复制要存储文件的目录路径 例如: \\WIN-desktop\aa\bb\cc 3、node 下载后写入网络共享目录 注意(重要):在使用UNC路径时,请确保你正确转义了反斜杠(使用两个反斜杠来表示一个&…

Ubuntu 22.04远程自动登录桌面环境

如果需要远程自动登录桌面环境,首先需要将Ubuntu的自动登录打开,在【settings】-【user】下面 然后要设置【Sharing】进行桌面共享,Ubuntu有自带的桌面共享功能,不需要另外去安装xrdp或者vnc之类的工具了 点开【Remote Desktop】…

跑冒滴漏智能识别摄像机

对于现代城市管理来说,跑冒滴漏智能识别摄像机正逐渐成为解决水管漏水问题和保护城市供水安全的重要工具。这类摄像机通过先进的视觉识别和数据分析技术,能够有效监测和识别城市管道系统中的漏水现象,对于提升供水系统效率和保障城市居民生活…

探寻操作系统文件名字符限制的规则和历史

引言 从最早的电脑系统到现代的操作系统,文件命名的规则一直在不断发展,这些规则体现了不同操作系统设计哲学的差异。作为开发者,了解这些差异和背后的历史渊源非常有价值,本文将详细探讨Windows、macOS和Linux三大主流操作系统在…

栈实现队列与队列实现堆

ok呀,上一篇博客写了队列的相关知识,接下来就是我们提及过的,栈与队列的相互实现了。堆与这个问题咧,其实大家完全可以当一个知识扩展因为,这个问题也是没有太多的实践意义的,更多的是教学意义。所以咧。大…

服务器数据恢复—DS5300存储raid5阵列数据恢复案例

服务器存储数据恢复环境: 某单位一台某品牌DS5300存储,1个机头4个扩展柜,50块硬盘组建2组RAID5磁盘阵列(一组raid5阵列有27块成员盘,存放Oracle数据库文件;另外一组raid5阵列有23块成员盘)。存储…

Jmeter使用JSON Extractor提取多个变量

1.当正则不好使时,用json extractor 2.提取多个值时,默认值必填,否则读不到变量

c进阶篇(四):内存函数

内存函数以字节为单位更改 1.memcpy memcpy 是 C/C 中的一个标准库函数&#xff0c;用于内存拷贝操作。它的原型通常定义在 <cstring> 头文件中&#xff0c;其作用是将一块内存中的数据复制到另一块内存中。 函数原型&#xff1a;void *memcpy(void *dest, const void…

长难句打卡7.4

But policymakers who refocus efforts on improving well-being rather than simply worrying about GDP figures could avoid the forecasted doom and may even see progress. 但政策制定者们应重新集中精力于提升&#xff08;社会&#xff09;幸福感&#xff0c;而非仅仅担…

Unity 资源 之 Sweet Cakes Icon套装,110个高品质蛋糕图标分享

Sweet Cakes Icon 套装 - 为 Unity 开发者带来甜蜜惊喜 前言资源包内容领取兑换码 前言 亲爱的 Unity 开发者们&#xff0c;今天要向你们介绍一款令人心动的图标套装 - Sweet Cakes Icon。 Sweet Cakes Icon 套装包含了超过 110 种高品质的蛋糕和纸杯蛋糕图标&#xff0c;这无…

鸿蒙开发HarmonyOS NEXT (三) 熟悉ArkTs

一、自定义组件 1、自定义组件 自定义组件&#xff0c;最基础的结构如下&#xff1a; Component struct Header {build() {} } 提取头部标题部分的代码&#xff0c;写成自定义组件。 1、新建ArkTs文件&#xff0c;把Header内容写好。 2、在需要用到的地方&#xff0c;导入…

去中心化 RAG 先行者,KIP Protocol 如何保护数据所有权、激活 AI 资产

AI 时代&#xff0c;人人都应实现 KnowledgeFi 的梦想或许并不遥远&#xff0c;KIP Protocol 正在生动践行这一价值理念&#xff0c;带动去中心化数字产权的创建与盈利&#xff0c;面向 CryptoAI 的蓝海市场迈出创新探索的技术步伐&#xff0c;朝着 Web3 行业打造去中心化 AI 的…

30斤用什么快递便宜?大件物品怎么寄划算省钱?

大学生小李最近因为毕业要搬家&#xff0c;不得不把一堆书籍、衣服和一些生活用品寄回家。作为一个精打细算的“穷学生”&#xff0c;小李可是不愿意在快递费上花冤枉钱的。于是&#xff0c;他开始研究各种寄快递省钱的方法&#xff0c;今天我们就来看看小李是怎么操作的。一、…

一款纯 js 实现的大模型应用服务 FastGPT 解读

背景介绍 最近被不同的人安利了 FastGPT 项目&#xff0c;实际上手体验了一下&#xff0c;使用流程类似之前调研过的 Dify, 包含的功能主要是&#xff1a;任务流的编排&#xff0c;知识库管理&#xff0c;另外还有一些外部工具的调用能力。使用页面如下所示&#xff1a; 实际…

【C++】 解决 C++ 语言报错:Undefined Reference

文章目录 引言 未定义引用&#xff08;Undefined Reference&#xff09;是 C 编程中常见的错误之一&#xff0c;通常在链接阶段出现。当编译器无法找到函数或变量的定义时&#xff0c;就会引发未定义引用错误。这种错误会阻止生成可执行文件&#xff0c;影响程序的正常构建。本…

武汉免费 【FPGA实战训练】 Vivado入门与设计师资课程

一&#xff0e;背景介绍 当今高度数字化和智能化的工业领域&#xff0c;对高效、灵活且可靠的技术解决方案的需求日益迫切。随着工业 4.0 时代的到来&#xff0c;工业生产过程正经历着前所未有的变革&#xff0c;从传统的机械化、自动化逐步迈向智能化和信息化。在这一背景下&…

日志自动提取---七牛Logkit观星应急工具

目录 七牛Logkit (Windows&Linux&Mac 等) 下载: 文档: windows配置过程: 1-下载 2-修改logkit-community基本配置 3-启动! 4-浏览器访问 5-添加配置吧 观星应急工具 &#xff08;Windows 系统日志&#xff09; 七牛Logkit (Windows&Linux&Mac 等) -…