【Docker】docker基础使用

news2024/11/15 11:15:00

文章目录

  • docker概念
    • 什么是docker
    • docker引擎迭代
    • docker与虚拟机
    • docker版本发展
  • docker基础
    • docker架构
    • docker Registry(镜像仓库)
    • 镜像仓库使用流程
    • 实际研发镜像仓库使用
    • 不同镜像仓库的拉取
  • docker常用命令
    • 镜像仓库命令
      • docker login
      • docker pull
      • docker push
      • docker search
      • docker logout
    • 镜像命令
      • docker images
      • docker image inspect
      • docker tag
    • 容器命令
      • docker run
      • docker ps命令

docker概念

什么是docker

​ Docker 本质其实是 LXC 之类的增强版,它本身不是容器,而是容器的易用工具。容器是 linux 内核中的技术, Docker 只是把这种技术在使用上简易普及了。 Docker 在早期的版本其核心就是 LXC 的二次封装发行版。

​ Docker 是基于 Go 语言实现的一个开源项目,它的主要目标是“Build, Ship and Run Any APP, Anywhere”,即通过对组件的封装、分发、部署、运行等生命周期的管理,使得用户的应用及其运行环境能够做到 一次封装,到处运行 。

​ 早期 Docker 利用 LXC 做容器管理引擎,但是在创建容器时,不再使用模板去安装生成,而是通过镜像技术(把一个操作系统用户空间所需要使用到的组件事先编排好,并整体打包成一个文件, image 文件),**镜像文件集中放在一个仓库中。当需要创建容器时, Docker 调用 LXC 的工具 lxc-create,但不再通过 lxc 的模板去安装,而是连接到镜像服务器上下载匹配的镜像文件,而后基于镜像启动容器。**所以, Docker 极大的简化了容器的使用难度。以后我们创建启动容器,只需要一个命令, docker-run,docker-stop 就可以启动停止一个容器了。

Docker 从本质上来说,其就是一个基于 Linux 操作系统的 Namespace 和 Cgroup 功能实现的隔离容器,可以模拟操作系统的功能

image-20230705004946618

docker运行流程

image-20230705005015857

通过镜像技术(把一个操作系统用户空间所需要使用到的组件事先编排好,并整体打包成一个文件, image 文件),镜像文件集中放在一个仓库中。当需要创建容器时, Docker 调用 LXC 的工具 lxc-create,但不再通过 lxc 的模板去安装,而是连接到镜像服务器上下载匹配的镜像文件,而后基于镜像启动容器。

docker引擎迭代

Docker 早期基于 LXC 容器管理引擎实现。技术成熟之后, Docker 自建了容器引擎叫 libcontainer;后来 CNCF 的介入, Docker 又研发了一个工业化标准的容器引擎 runC,目前所使用的新版 Docker,所使用的容器引擎就是 RunC。

docker与虚拟机

docker与虚拟机的区别

传统虚拟机Docker容器
磁盘占用几个GB 到几十个GB 左右几十 MB 到几百 MB 左右
CPU内存占用虚拟操作系统非常占用 CPU 和内存,需要通过虚拟层调用,占用率高Docker 引擎占用资源极低,直接作用于硬件资源, 占用少
启动速度(从开机到运行项目) 几分钟从开启容器到运行项目)几秒
安装管理需要专门的运维技术安装、管理方便
应用部署手动部署,速度慢体系化部署,可以自动化,速度快
隔离性系统级别进程级别
封装程度打包整个操作系统打包项目代码和依赖信息

为什么Docker运行速度比虚拟机快得多?

​ docker 有比虚拟机更少的抽象层。 docker 不需要 Hypervisor 实现硬件资源虚拟化,运行在 docker 容器上的程序直接使用的是实际物理机的硬件资源。因此在 cpu、内存利用率上 docker 将会在效率上有明显的优势。 docker 利用的是宿主机的内核,而不需要Guest OS,节省了 Guest OS 占用的资源 。

image-20230705010838633

​ docker 不需要 Guest OS,Docker在创建一个容器时,不需要和虚拟机一样重新加载一个操作系统内核。从而避免引寻、加载操作系统内核返回时耗时耗资源的过程,当新建一个虚拟机时,虚拟机软件需要加载 Guest OS,返回新建过程是分钟级别的。而新建一个docker 容器只需要几秒钟。

docker版本发展

lxc:lxc 是最早的 linux 容器技术,早期版本的 docker 直接使用 lxc 来实现容器的底层功能。虽然使用者相对较少,但 lxc 项目仍在持续开发演进中。

libcontainer: docker 从 0.9 版本开始自行开发了 libcontainer 模块来作为 lxc 的替代品实现容器底层特性,并在 1.10 版本彻底去除了 lxc。在 1.11 版本拆分出 runc 后ibcontainer 也随之成为了 runc 的核心功能模块, runc 后续变成了容器标准。

moby: moby 是 docker 公司发起的开源项目,其中最主要的部分就是同名组件 moby,事实上这个 moby 就是 dockerd 目前使用的开源项目名称, docker 项目中的 engine(dockerd)仓库现在就是从 moby 仓库 fork 而来的,使用 containerd 作为运行时标准。

docker基础

docker架构

image-20230326004308546

docker运行的原理

docker是一个Client-Server结构的系统,Docker守护进程运行在主机上,然后通过Socket连接从客户端访问,守护进程从客户端接受命令并管理运行在主机上的容器。

image-20230326004909959

Docker 是一个 C/S 模式的架构,后端是一个松耦合架构,众多模块各司其职。

docker运行的基本流程为:

image-20230326010427129

image-20230326010450423

docker Registry(镜像仓库)

什么是Registry?

镜像仓库 (Docker Registry) 负责存储、管理和分发镜像,并且提供了登录认证能力,建立了仓库的索引。

镜像仓库管理多个 Repository, Repository 通过命名来区分。每个 Repository 包含一个或多个镜像,镜像通过镜像名称和标签 (Tag)来区分。

image-20230705235534993

镜像仓库(Registry):要从哪一个镜像仓库拉取镜像,通常通过 DNS 或 IP 地址来确定一个镜像仓库如 hub.docker.com;

一个 Registry 中可以存在多个Repository;Repository 可分为“顶层仓库”和“用户仓库”;用户仓库名称格式为“用户名/仓库名”;每个仓库可以包含多个 Tag(标签),每个标签对应一个镜像

  • Repository: 由某特定的 docker 镜像的所有迭代版本组成的镜像仓库
  • 镜像名称(name) +标签(tag):如 nginx:latest
  • 认证能力:提供用户注册,登录、登出能力
  • 索引:提供镜像的索引信息,方便检索

一个容器镜像包含了两个部分,一个是元数据,其实就是由 dockerfile 构建出来的描述文件,这个描述文件会说这个容器镜像有多少层,每一层里面有什么内容,它的checksum 这些信息都会记录下来;还有最终的可执行文件是在存储数据里面,存储在一个一个的 blob 里面,真正占有空间的就是这些 blob。

仓库分类

(1)公有仓库:像阿里云、 dockerhub 等放到公有网络上,不用登录就可以下载镜像,供大家访问使用
(2)私有仓库:不对外开放,往往位于私有网络,只有公司内部人员可以使用。

docker镜像仓库的工作机制

镜像仓库使用流程

  • 通过docker login登录仓库
  • Docker pull拉取需要的镜像
  • 通过dockerfile或者commit等方式制作完镜像,通过docker push上传到仓库。

实际研发镜像仓库使用

image-20230706004919691

解释:

  • 开发环境:开发人员使用的一套环境
  • 测试环境:需求开发完成后,发布到供测试人员进行测试的环境
  • 预发布环境:版本测试完成后,发布到和生产类似的环境,提前模拟生产发布
  • 生产环境:真正面向客户的环境

不同的工作人员在不同的环境完成工作,当产品开发完成后再push到生产环境中。

不同镜像仓库的拉取

DockerHub

Docker Hub 是 Docker 提供的托管存储库服务,用于查找容器映像并与团队共享。

DockerHub具有以下功能:

(1)个人可以注册私有仓库,能够发布自己的镜像

(2)提供镜像检索能力

(3)提供海量官方和认证组织的镜像

(4)从 GitHub 和 Bitbucket 自动构建容器镜像并将它们推送到 Docker Hub

(5)支持 webhook(webhook 是一种基于 HTTP 的回调函数,发生指定的事件时,服务器会自动将相关的有效负载发送到客户端的 webhook URL。 )

  • 镜像搜索

image-20230706010344503

  • 镜像tag查找

image-20230706010401590

比如nginx镜像支持哪些版本等。

  • 拉取版本

image-20230706010437753

国内镜像源

国内从 Docker Hub 拉取镜像有时会遇到困难,此时可以配置镜像加速器。国内很多 云服务商都提供了国内镜像加速器服务,例如:

阿里云加速器(点击管理控制台 -> 登录账号(淘宝账号) -> 右侧镜像工具 -> 镜像加速器-> 复制加速器地址)

网易云加速器地址 https://hub-mirror.c.163.com

百度云加速器地址"https://mirror.baidubce.com

可以在docker的配置文件 /etc/docker/daemon.json 添加下面的内容,docker配置加速器

{
# 注意如果最外层以及你给有了配置,不要直接覆盖,而是将下面的内容添加,然
后确保 json 的格式正确
	"registry-mirrors": [
	"https://hub-mirror.c.163.com",
	"https://mirror.baidubce.com"
	]
}

重新加载配置

# 加载配置
sudo systemctl daemon-reload
# 重启 docker
sudo systemctl restart docker
#查看 docker 状态
sudo systemctl status docke

私有仓库

私有镜像仓库则是指部署在公司或组织内部,用于自身应用 Docker 镜像存储、分发的镜像仓库。

常用的私有仓库构建工具:

  • **Harbor:**Harbor 是 VMware 公司最近开源的企业级 Docker Registry 项目, 其目标是帮助用户迅速搭建一个企业级的 Docker registry 服务。它以 Docker 公司开源的registry 为基础,提供了管理 UI, 基于角色的访问控制(Role Based Access Control),AD/LDAP 集成、以及审计日志(Audit logging) 等企业用户需求的功能,同时还原生支持中文。 Harbor 的每个组件都是以 Docker 容器的形式构建的,使用 Docker Compose 来对它进行部署。
  • Nexus:Nexus 是 Sonatype 公司发布的一款仓库(Repository)管理软件,目前常被用来作为 Maven 私服、 Docker 私服。
  • Docker registry:由 docker 官方提供的私服,类似于 docker hub。用于保存公司内部上传的 Docker 镜像。

docker常用命令

镜像仓库命令

docker login

登陆到一个Docker镜像仓库,如果未指定镜像仓库地址,默认为官方的Docker hub。

docker login [OPTIONS] [SERVER]

关键参数

  • -u:登陆的用户名
  • -p:登陆的密码

image-20230707011352818

也可以使用下面的命令登陆

docker login -u 用户名 -p 密码

docker pull

从镜像仓库中拉取或者更新指定镜像

docker pull [OPTIONS] NAME[:TAG|@DIGEST]

别名

docker image pull

关键参数:

  • -a :拉取所有 tagged 镜像
  • –disable-content-trust :忽略镜像的校验,默认开启

案例

docker pull nginx:1.23.3

image-20230707013628317

可以指定拉取DIGEST

docker pull nginx@sha256:f4e3b6489888647ce1834b601c6c06b9f8c03dee6e097e13ed3e28c01ea3ac8c

image-20230707013808862

docker push

将本地的镜像上传到镜像仓库,要先登陆到镜像仓库

docker push [OPTIONS] NAME[:TAG]

别名

docker image push

关键参数

  • -a:推送所有tagged镜像
  • –disable-content-trust :忽略镜像的校验,默认开启

案例:

docker push nginx:1.23.3

image-20230708012938798

失败原因:没有权限,我们个人用户无法向nginx仓库中加镜像。

下面是正确push一个镜像的方法:

docker login -u 用户 -p 密码


# docker的规则,需要我们修改镜像的tag,才能上传我们自己的镜像
# docker push namespace/regname:tagname
#先修改tag的name
docker tag nginx:1.23.4  namespace/regname:v1.23.4
docker push  namespace/regname:v1.23.4

docker search

从 Docker Hub 查找镜像

docker search [OPTIONS] TERM

关键参数:

  • –no-trunc :显示完整的镜像描述
  • -f <过滤条件>:列出收藏数不小于指定值的镜像。

案例:从 Docker Hub 查找所有镜像名包含 nginx,并且 star 数大于 10 的镜像

docker search -f stars=10 nginx

image-20230708020201630

docker logout

退出一个 Docker 镜像仓库,如果未指定镜像仓库地址,默认为官方仓库 Docker

docker logout [SERVER]

案例

docker logout
# 也可以指定退出仓库
docker logout https://index.docker.io/v1/

镜像命令

docker images

列出本地镜像。

docker images [OPTIONS] [REPOSITORY[:TAG]]
#别名
docker image ls, docker image list

关键参数:

  • -a :列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层)
  • –digests :显示镜像的摘要信息;
  • -f :显示满足条件的镜像;
  • –format :指定返回值的模板文件;
  • –no-trunc :显示完整的镜像信息;
  • -q :只显示镜像 ID。

案例:

查找所有的镜像

docker image ls

查找本地关于nginx的镜像

docker images nginx -a

image-20230708230800064

返回本地关于nginx的镜像,按照json格式返回

docker images nginx --format json

image-20230708231211667

docker image inspect

功能:查看镜像详细信息 ,语法:

docker image inspect [OPTIONS] IMAGE [IMAGE...]

案例:

docker image inspect nginx:1.23.3

image-20230708231733788

也可以使用image的id查看镜像的具体信息:

docker image inspect 

image-20230708231943651

docker tag

功能:标记本地镜像,将其归入某一仓库。

语法:

docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]

案例

docker tag nginx namespace/regname:v1.23.1
docker push

容器命令

docker run

功能:创建一个新的容器并运行一个命令

语法:

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

# 别名
docker container run

关键参数:

  • -d: 后台运行容器,并返回容器 ID;
  • -i: 以交互模式运行容器,通常与 -t 同时使用;
  • -P: 随机端口映射,容器内部端口随机映射到主机的端口
  • -p: 指定端口映射,格式为: 主机(宿主)端口:容器端口
  • -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
  • –name=“nginx-lb”: 为容器指定一个名称;
  • -h “mars”: 指定容器的 hostname;
  • -e username=“ritchie”: 设置环境变量;
  • –cpuset-cpus=“0-2” or --cpuset-cpus=“0,1,2”: 绑定容器到指定 CPU 运行;
  • -m :设置容器使用内存最大值;
  • –network=“bridge”: 指定容器的网络连接类型;
  • –link=[]: 添加链接到另一个容器;
  • –volume , -v: 绑定一个卷
  • –rm :shell 退出的时候自动删除容器

什么是端口映射?

Docker 端口映射是指将容器内的端口映射到主机上的端口,使得外部可以通过主机的端口访问容器中的应用。这样可以在不更改应用代码的情况下在本地开发和生产环境中运行相同的应用。映射端口的方法可以在运行容器时指定,如 “docker run [image] -p 主机端口:容器端口”。

image-20230709000803074

docker run不带参数

下面我们是实现一个centos 7容器的运行:

docker pull centos:7
docker run centos:7

image-20230709005716967

我们使用docker ps查看运行中的容器时,发现centos7并没有正常运行。使用docker ps -a查看,发现centos7运行过,只是退出了:

image-20230709005933668

这是因为这是一个bash命令,当我们不输入指令时,bash就自动退出了。下面是正确的交互命令:

docker run -it centos:7 bash

image-20230709012319821

docker run -d参数

不带-d参数,容器是以前台的方式进行运行

docker run nginx:1.23.3

以前台的方式运行nginx:

image-20230709012606566

下面以后台的方式运行nginx:

docker run -d nginx:1.23.3

image-20230709012725206

docker run -it参数

-i: 以交互模式运行容器,通常与 -t 同时使用; -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用 。-i和-t参数往往需要配合着使用,才能实现和容器的交互。

docker run -it centos:7
hostname
ps -ef

image-20230709013217642

docker run -p参数:端口映射

-P: 随机端口映射,容器内部端口随机映射到主机的端口 ;-p: 指定端口映射,格式为: 主机(宿主)端口:容器端口;

我们一般很少随机的分配端口进行端口映射,一般都是指定端口进行映射。

docker run -p 80:80 nginx:1.23.3

image-20230709013940309

宿主机的80端口已经被占用,因此我们需要映射其他未被使用的端口。

docker run -p 8080:80 nginx:1.23.3

image-20230709014254516

将宿主机的8080端口和容器的80通过映射后,就可以通过浏览器访问8080端口,访问nginx容器。

docker run --name -h -e 参数

–name=“nginx-lb”: 为容器指定一个名称;-h “mars”: 指定容器的 hostname;-e username=“ritchie”: 设置环境变量;

–name命令使用:

docker run -d --name="mynginx1" nginx:1.23.3
docker ps
docker stop mynginx1
docker ps

image-20230709020053094

–h和–e的使用:

docker run -it --name="mycentos" -h mycentos -e myenv=test centos:7 bash

image-20230709020552427

docker run --cpuset-cpus参数

–cpuset-cpus=“0-2” or --cpuset-cpus=“0,1,2”: 绑定容器到指定 CPU 运行;

cat /proc/cpuinfo  # 参考cpu的使用情况

image-20230709021009956

docker run -d nginx:1.23.3 --cpuset-cpus="0-2"

-m参数的使用:设置容器使用内存最大值;

docker run -d --name mynginx2 nginx:1.23.3
docker run -d --name mynginx3 -m 500m nginx:1.23.3

#使用docker stats查看容器的状态
docker stats mynginx2 mynginx3

image-20230709021645880

可以看到:mynginx容器的内存大小为500m。

docker run -link参数

–link=[]: 添加链接到另一个容器;

我们先运行一个centos:7容器,命名为mycentos1。

docker run -it --name="mycentos1" -h mycentos1 centos:7 bash

我们再运行另外一个centos:7容器,命名为mycentos2。并为mycentos2添加mycentos1的链接,并试着ping一下mycentos1:

docker run -it --name="mycentos2" -h mycentos2 --link mycentos1:mywebsite1 centos:7 bash

image-20230709022624575

可以看到,mycentos2可以ping通mycentos1,并且/etc/hosts文件中也有mycentos1的配置信息。

接下来,我们可以在mycentos1中试着ping一下mycentos2:

image-20230709022901282

可以看到mycentos1无法ping通mycentos2,说明docker --link建立链接是单向的。

docker run --rm参数

docker run --rm:shell 退出的时候自动删除容器 。

docker run -it --name="mycentos4" -h mycentos4 --rm centos:7 bash

image-20230709023434145

可以看到shell在退出后,自动的删除了容器。

docker ps命令

功能:列出容器

语法:

docker ps [OPTIONS]

# 别名
docker container ls, docker container list, docker container ps

关键参数:

  • -a :显示所有的容器,包括未运行的。
  • -f :根据条件过滤显示的内容。
  • –format :指定返回值的模板文件。如 json 或者 table。
  • -l :显示tag为latest 的容器。
  • -n :列出最近创建的 n 个容器。
  • –no-trunc :不截断输出。
  • -q :静默模式,只显示容器编号。
  • -s :显示总的文件大小。

image-20230709024006421

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

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

相关文章

Github的加速访问(解决github进不去)

1.下载Steam Steam 现更名为 Watt Toolkit 并在 Microsoft Store 中已可用 2.打开Steam 3.勾选github 一键加速

java试题1

1、哪些问题是HTTPS无法解决的&#xff1f; Http是基于TCP协议的&#xff0c;在网络层的传输耗时比较长&#xff0c;https没有解决这个问题&#xff1b;http头是不能压缩的&#xff0c;每次要传递很大的数据包&#xff0c;每个连接也只能支持一个请求。同时https应用了很多加密…

Docker - 基本概念、与虚拟机的区别、架构、镜像操作、容器操作、数据卷挂载

目录 一、对 Docker 的理解 1、Docker 基本概念 2、Docker 与 虚拟机的区别 3、何为镜像和容器&#xff1f; 4、Docker 主要架构 二、Docker 基本操作 1、Docker 镜像操作 2、案例&#xff08;镜像&#xff09;&#xff1a;去 DockerHub 搜索并拉取一个 Nginx 镜像&am…

第一百天学习记录:线性代数:行列式(宋浩板书)

n阶行列式 注&#xff1a;二阶行列式和三阶行列式以及排列和逆序数见高等数学自学向量篇中间穿插的线性代数知识点补充。 行列式的性质 性质7&#xff08;☆☆☆&#xff09; 行列式按行展开 拉普拉斯 行列式相乘 行列式的计算 Cramer法则 题外话&#…

【unity实战】制作类元气骑士、挺进地牢——俯视角射击游戏多种射击效果(一)(附源码)

文章目录 本期目标前言欣赏开始1. 角色移动和场景搭建2. 绑定枪械2.1 首先将各种枪械的素材添加给人物作为子物体2.2 给枪械也分别添加两个子物体用作标记枪口和弹仓位置 3. 枪械动画4. 切换枪械5. 发射功能5.1 手枪(1) 枪械随着鼠标旋转(2) 射击时间间隔(3) 创建好子弹、弹壳和…

xilinx zc706 10/100/100M以太网完整性测试说明

一&#xff1a;概述 最近接触FPGA比较多&#xff0c;本次是一款zc706芯片的FPGA&#xff0c;开发版是长这样的&#xff0c;基本上开发也是安装开发版的模块组合进行开发。 开发版上以太网芯片使用的是Marvell 881116R。 本次只是验证下控制以太网进行模式测试的说明&#xf…

子集 (力扣)数学推理 JAVA

给你一个整数数组 nums &#xff0c;数组中的元素 互不相同 。返回该数组所有可能的子集&#xff08;幂集&#xff09;。 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。 示例 1&#xff1a; 输入&#xff1a;nums [1,2,3] 输出&#xff1a;[[],[1],[2],[1,2],[3],[…

Windows10上Docker和Kubernetes的安装

官网&#xff1a;https://www.docker.com/products/docker-desktop/ 历史版本&#xff1a;https://download.docker.com/linux/static/stable/ 1、去Docker官网下载Docker Desktop&#xff0c;并一键安装 2、安装k8s所需的镜像 下载k8s-for-docker-desktop包 git clone http…

WAIC2023记录

汤晓鸥 学生与工作&#xff1a; 微软布局大模型方向

Vue3+Vite 项目配置 vue-router,并完成路由模块化

前言 我的技术栈&#xff1a;Vue3 Vite TypeScirpt我的包管理工具&#xff1a;pnpm&#xff08;v8.6.6&#xff09;我的 node.js 版本&#xff1a;v16.14.0 一、安装vue-router pnpm install vue-router二、创建页面 在 /src/views 文件夹下创建 home、login、test文件夹…

Chat2DB-开源AI智能数据库客户端工具 能够将自然语言转换为SQL

一、Chat2DB是什么 Chat2DB 是一款有开源免费的多数据库客户端工具&#xff0c;支持windows、mac本地安装&#xff0c;也支持服务器端部署&#xff0c;web网页访问。和传统的数据库客户端软件Navicat、DBeaver 相比Chat2DB集成了AIGC的能力&#xff0c;能够将自然语言转换为SQ…

论文笔记--SentEval: An Evaluation Toolkit for Universal Sentence Representations

论文笔记--SentEval: An Evaluation Toolkit for Universal Sentence Representations 1. 文章简介2. 文章概括3 文章重点技术3.1 evaluation pipeline3.2 使用 4. 代码4.1 数据下载4.2 句子嵌入4.3 句子嵌入评估 5. 文章亮点6. 原文传送门7. References 1. 文章简介 标题&…

windows PE 指南(基础部分)(一)

windows PE 指南&#xff08;基础部分&#xff09;&#xff08;一&#xff09; 查找软件注册码64位汇编和编译连接PE和COFF文件简介PE和COFF文件布局简介源代码的作用obj的作用PE的作用 COFF格式文件布局概览PE格式文件布局概览COFF格式和PE格式的布局总结 COFF头COFF File Hea…

linux的磁盘分区管理思路

1、基本分区管理 1.1、磁盘划分思路 进入分区 新建分区 fdisk 更新分区表&#xff08;刷新&#xff09;partprobe /dev/sda 格式化 &#xff08;文件系统&#xff09; 挂载使用 - -> mount(开机自动挂载||autofs自动挂载) 1.2、使用fdisk分区 n创建新分区&#xff08;…

一、VMware虚拟机安装以及centos7镜像安装

目录 一、安装VMware虚拟机 二、centos7安装 (模板机&#xff09; 2.1 虚拟机安装 2.2 虚拟机配置 三、配置服务器 IP 地址 1. VMware中配置 2. window服务器 3. 在虚拟机中&#xff08;centos0&#xff09; 资源包网盘链接&#xff1a;链接&#xff1a;https://pan.bai…

ActiveMQ消息中间件应用场景

一、ActiveMQ简介 ActiveMQ是Apache出品&#xff0c;最流行的&#xff0c;能力强劲的开源消息总线。ActiveMQ是一个完全支持JMS1.1和J2EE1.4规范的JMS Provide实现。尽管JMS规范出台已经是很久的事情了&#xff0c;但是JMS在当今的J2EE应用中仍然扮演这特殊的地位。 二、Active…

速成版-带您一天学完vue2框架

vue是一个前端js框架&#xff0c;可以简化Dom操作&#xff0c;实现响应式数据驱动。前面全是废话&#xff0c;哈哈&#xff0c;接下来一起学习吧。 目录 一、vue基础 1.1、vue简介 1.2、第一个Vue程序 1.3、vue基础-el挂载点 1.4、data数据对象 二、本地应用-指令篇 2.…

DESCN:用于个体治疗效果估计的深度全空间交叉网络

英文题目&#xff1a;DESCN: Deep Entire Space Cross Networks for Individual Treatment Effect Estimation 翻译&#xff1a;用于个体治疗效果估计的深度全空间交叉网络 单位&#xff1a;阿里 论文链接&#xff1a; 代码&#xff1a;https://github.com/kailiang-zhong/…

由中序及后序遍历序列构建二叉树的函数参数解析

【二叉树构建函数的参数确立示意图】 ile&#xff1a;中序遍历左端点位置&#xff0c;iri&#xff1a;中序遍历右端点位置 ple&#xff1a;后序遍历左端点位置&#xff0c;pri&#xff1a;后序遍历右端点位置 【函数代码】 int build(int ile,int iri,int ple,int pri){int ro…

(文章复现)考虑微网新能源经济消纳的共享储能优化配置matlab代码

参考文献&#xff1a; [1]谢雨龙,罗逸飏,李智威等.考虑微网新能源经济消纳的共享储能优化配置[J].高电压技术,2022,48(11):4403-4413. 1.基本原理 双层规划是具有两个层次的优化问题&#xff0c;具有外层和内层两个优化目标&#xff0c;本研究的问题结构如图2所示。两层问题相…