Docker(一):Docker简介及安装

目录

  • 1 Docker简介
    • 1.1 容器跟虚拟机的区别
      • 1、虚拟机是什么
      • 2、容器是什么
      • 3、容器和虚拟机的区别
    • 1.2 为什么要学习容器
    • 1.3 Docker 是什么
  • 2 Docker安装
    • 2.1 安装docker-centos7
      • 1、环境初始化
      • 2、安装docker-ce
      • 3、配置docker镜像加速器
    • 2.2 安装docker-ubuntu22.04
      • 1、安装
      • 2、添加镜像加速
      • 3、使用阿里源安装

1 Docker简介

在了解docker之前,先介绍几个常用的官方网站:
docker官网:https://docs.docker.com/
Docker的github地址:https://github.com/moby/moby

Dockerhub官网
https://registry-1.docker.io

如果docker官方registry拉取镜像速度很慢,可以尝试daocloud提供的加速器服务
https://dashboard.daocloud.io/mirror

1.1 容器跟虚拟机的区别

1、虚拟机是什么

虚拟机(Virtual Machines,简称VMs),虚拟机是一种模拟计算机系统的软件实现,它可以在物理服务器上模拟出多个独立的计算机环境。每个虚拟机都运行着完整的操作系统(如Windows、Linux等),并且可以运行任何为该操作系统设计的应用程序。
理解虚拟机的关键在于:

  • 虚拟机提供了与物理机相似的计算环境,但它是虚拟的。
  • 每个虚拟机都是独立的,拥有自己的操作系统、CPU、内存、存储和网络接口。
  • 虚拟机之间是完全隔离的,一个虚拟机的任何操作都不会影响到其他虚拟机。
  • 虚拟机提供了强大的灵活性和安全性,但相比容器,它们的启动和运行需要更多的时间和资源。

2、容器是什么

容器(Container)是一种轻量级的虚拟化技术,它允许在单个操作系统实例上运行多个隔离的应用程序。与虚拟机不同,容器共享宿主操作系统的内核,但拥有自己的文件系统、进程空间和网络接口。
理解容器的关键在于:

  • 容器是轻量级的,因为它们不需要完整的操作系统,启动速度快,资源占用少。
  • 容器提供了应用级别的隔离,而不是操作系统级别的隔离。
  • 容器镜像包含了运行应用所需的所有依赖和配置,使得部署和复制变得快速和一致。
  • 容器适合于微服务架构和快速迭代的开发环境,但它们通常不提供虚拟机那样的完全隔离。

可以将虚拟机想象成完整的房子,每个虚拟机都有自己的墙壁、地板、家具(操作系统和应用程序)等,它们是独立的,互不影响。而容器则像是公寓楼中的不同公寓,它们共享同一栋楼的基础结构(操作系统内核),但每个公寓内部有自己的房间布局(文件系统和应用程序)。
在实际应用中,选择虚拟机还是容器取决于自己的需求。如果需要运行不同操作系统的应用,或者需要完全的隔离和安全保障,虚拟机可能是更好的选择。如果追求快速部署、资源高效和易于管理,容器可能更适合。

3、容器和虚拟机的区别

容器(Containers)和虚拟机(Virtual Machines,简称VMs)都是现代计算环境中常用的技术,它们提供了在单个物理服务器上运行多个应用或服务的能力。尽管它们的目标相似,但它们在实现方式、性能和使用场景上有着显著的区别。

容器(Containers):

  • 1.轻量级:容器直接运行在宿主操作系统上,共享宿主的内核,因此启动速度快,资源占用小。
  • 2.隔离性:容器提供了应用级别的隔离,每个容器都有自己的文件系统、进程空间和网络接口,但它们之间是相互独立的。
  • 3.快速部署:由于容器镜像包含了运行应用所需的所有依赖和配置,因此可以快速地部署和复制容器环境。
  • 4.资源占用:容器通常比虚拟机更节省资源,因为它们不需要额外的操作系统和虚拟硬件。
  • 5.可移植性:容器的可移植性较好,可以在不同的平台和环境中保持一致性。
  • 6.性能:容器的性能接近原生应用,因为它们直接运行在宿主机的硬件上,没有虚拟化层的开销。

虚拟机(Virtual Machines):

  • 1.完全隔离::虚拟机提供了操作系统级别的隔离,每个虚拟机都有自己的操作系统、应用程序和虚拟硬件。
  • 2.安全性:虚拟机提供了更强的安全性,因为它们之间的隔离更加彻底,即使一个虚拟机出现问题,也不会影响到其他虚拟机。
  • 3.资源分配:虚拟机可以分配独立的资源(CPU、内存、存储等),并且资源分配更加灵活。
  • 4.启动时间:虚拟机的启动和运行速度通常比容器慢,因为它们需要加载完整的操作系统。
  • 5.兼容性:虚拟机可以运行不同的操作系统,包括与宿主机不同的操作系统。
  • 6.性能开销:虚拟机由于虚拟化层的存在,通常会有更高的性能开销。

容器和虚拟机各有优势和适用场景。容器适合于微服务架构、持续集成/持续部署(CI/CD)和快速扩展的应用场景,而虚拟机则更适合于需要完全隔离环境、运行不同操作系统或需要更多资源控制的场景。选择哪种技术取决于具体的应用需求、性能要求和安全考虑。

1.2 为什么要学习容器

在传统的生产环境中,一个Java 代码,需要编译打包,会打包成 war包或者jar包,然后安装环境并启动成功,就可以对外提供服务了(能正常访问页面,做操作)
没有用容器之前通常会出现如下问题:

  • 1.开发环境没问题,测试环境报错---->排查后发现是启动脚本里jdk版本跟代码要求的版本不匹配
  • 2.测试环境没问题,生产环境报错 -->排查发现是tomcat版本和jdk版本不匹配。

在实际中,开发、运维、测试的环境各负责人不同,有可能服务在开发环境正常运行,但是在测试环境就不行。排查之后发现是环境的问题,如:jdk版本和实际代码中的版本不一致。

如果使用容器,会把 应用程序、所需的环境、相关依赖等整体进行打包成一个镜像。这个打出来的包叫做镜像。 镜像运行时叫做容器。使用镜像可以很方便的做迁移,备份,存储,交付。

打包之后的镜像有这样的特点:

  • 1.环境的强一致性。docker镜像提供了除内核外完成的运行时环境,保证其他使用人员,能完整复现应用运行时环境。不会出现“环境不一致导致报错“这种情况。
  • 2.迁移方便,持续交付和部署。一次打包,到处运行。

1.3 Docker 是什么

Docker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目。它基于 Google 公司推出的 Go 语言实现。项目后来加入了 Linux 基金会,遵从了 Apache 2.0 协议,项目代码在GitHub 上进行维护。

Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何支持docker的机器上运行。容器是完全使用沙箱机制,相互之间不会有任何接口调用。
Docker logo:
在这里插入图片描述

Docker的思想来自于集装箱,集装箱解决了什么问题?在一艘大船上,可以把货物规整的摆放起来。并且各种各样的货物被装在集装箱里,集装箱和集装箱之间不会互相影响。那么我就不需要专门运送蔬菜的船和专门运送货物的船了。只要这些货物在集装箱里封装的好好的,那我就可以用一艘大船把他们都运走。
docker就是类似的理念。云计算就好比大货轮。docker就是集装箱。
docker有两种版本:docker-ce:社区版 和 docker-ee: 商业版(多用于没有技术人员)

docker的特点:

  • 优点:
    • 1)快:运行时的性能快,管理操作(启动,停止,开始,重启等等) 都是以秒或毫秒为单位的。
    • 2)敏捷:像虚拟机一样敏捷,而且会更便宜,在bare metal(裸机)上布署像点个按钮一样简单。
    • 3)灵活:将应用和系统“容器化”,不添加额外的操作系统
    • 4)轻量:在一台服务器上可以布署100~1000个Containers容器。
    • 5)便宜:开源的,免费的,低成本的。
  • 缺点:
    • 所有容器共用linux kernel资源,资源能否实现最大限度利用是不确定的,所以在安全上也会存在漏洞(对于这种情况可以使用扫描软件进行漏洞扫描等)

2 Docker安装

2.1 安装docker-centos7

环境:centos7.9
IP:192.168.216.10

1、环境初始化

# 设置主机名
hostnamectl set-hostname master 

#### 关闭防火墙
systemctl stop firewalld && systemctl disable firewalld

#### 关闭selinux
# 临时关闭
setenforce 0
# 永久关闭
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
# 注意:修改selinux配置文件之后,重启机器,selinux才能永久生效
# 重启后查看,显示disabled则表示关闭成功
getenforce



#### 配置时间同步,也可以使用ntpdate命令来进行时间同步
yum install chrony -y
## 修改配置文件
cat /etc/chrony.conf
# 新加
allow 192.168.0.0/16
local stratum 10


systemctl restart chrony.service
systemctl enable chrony.service
systemctl status chronyd.service

### ntpdate时间同步
# yum install -y ntp ntpdate
# ntpdate cn.pool.ntp.org 
# 编写计划任务
crontab -e 
* */1 * * * /usr/sbin/ntpdate   cn.pool.ntp.org
# 重启crond服务使配置生效:systemctl restart crond


##配置时区
timedatectl set-timezone Asia/Shanghai


#### 安装基础软件包
yum install -y  wget net-tools nfs-utils lrzsz gcc gcc-c++ make cmake libxml2-devel openssl-devel curl curl-devel unzip ntp libaio-devel wget vim ncurses-devel autoconf automake zlib-devel  python-devel epel-release openssh-server socat  ipvsadm conntrack 

2、安装docker-ce

此处使用阿里源进行安装

# 1、安装必要的一些系统工具
yum install -y yum-utils device-mapper-persistent-data lvm2
# 2、添加软件源信息
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 3、
sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
# 4、更新并安装Docker-CE,此处安装的是最新版本的docker-ce
yum makecache fast
yum -y install docker-ce
# 5、开启Docker服务,并设置开机自启动
systemctl start docker.service && systemctl enable docker.service
# 查看docker的状态,正常状态显示在下图
systemctl status docker.service
# 查看docker版本
docker version

# 注意:
# 官方软件源默认启用了最新的软件,可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,可以通过以下方式开启。同理可以开启各种测试版本等。
# vim /etc/yum.repos.d/docker-ce.repo
#   将[docker-ce-test]下方的enabled=0修改为enabled=1
#
# 安装指定版本的Docker-CE:
# 1、查找Docker-CE的版本:
# yum list docker-ce.x86_64 --showduplicates | sort -r
#   Loading mirror speeds from cached hostfile
#   Loaded plugins: branch, fastestmirror, langpacks
#   docker-ce.x86_64            17.03.1.ce-1.el7.centos            docker-ce-stable
#   docker-ce.x86_64            17.03.1.ce-1.el7.centos            @docker-ce-stable
#   docker-ce.x86_64            17.03.0.ce-1.el7.centos            docker-ce-stable
#   Available Packages
# 2、安装指定版本的Docker-CE: (VERSION例如上面的17.03.0.ce.1-1.el7.centos)
# yum -y install docker-ce-[VERSION]

显示如下表示正常启动:
在这里插入图片描述

在这里插入图片描述

3、配置docker镜像加速器

登陆阿里云镜像仓库:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
如果没有开通,可开通阿里云的镜像服务

在这里插入图片描述直接进行粘贴就可以,也可以使用下面的配置

mkdir -p /etc/docker
cat >> /etc/docker/daemon.json << EOF
{
  "registry-mirrors": ["https://e9v5y0sc.mirror.aliyuncs.com","https://registry.docker-cn.com","https://docker.mirrors.ustc.edu.cn","https://dockerhub.azk8s.cn","http://hub-mirror.c.163.com"]
}
EOF

# 使配置生效
systemctl daemon-reload
systemctl restart docker
systemctl status docker

下面是常用的镜像加速列表:(不过此处需要注意的是:自从七月docker hub无法登录之后,很多镜像加速站也失效了,下方也可能已经失效了)
在这里插入图片描述

2.2 安装docker-ubuntu22.04

1、安装

以下这种方式适用于服务器可以联通到 docker 官方地址。如果无法连到官方,可以使用国内源进行安装,参考下面的阿里源安装

# 切换到 root 用户安装
sudo -i

# 更新
sudo apt update

# 安装必要的证书并允许 apt 包管理器使用以下命令通过 HTTPS 使用存储库:
sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg lsb-release
# 说明:
# apt-transport-https:允许APT通过安全的HTTPS连接下载软件包
# ca-certificates:包含了一系列的SSL/TLS证书,用于验证远程服务器的身份
# curl:用于获取或发送数据到服务器。它支持多种协议,包括HTTP、HTTPS、FTP等。curl常用于自动化脚本中,进行文件上传下载、API调用等任务
# software-properties-common:包含管理软件包仓库和版本管理的工具
# gnupg:提供了数据加密和解密的工具
# lsb-release:提供了查询Linux标准基础(Linux Standard Base)版本信息的工具。

# 运行下列命令添加 Docker 的官方 GPG 密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

# 添加 Docker 官方库:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# 更新 Ubuntu 源列表:
sudo apt update

# 安装指定版本的docker
# 检查可以安装的docker版本库
apt-cache madison docker-ce
###########
 docker-ce | 5:26.0.0-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
 docker-ce | 5:25.0.5-1~ubuntu.22.04~jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages


# 挑选上面列表中的任何版本进行安装
# 在安装过程中,会出现弹窗,可以直接选择“OK”,后续会进行介绍
sudo apt install docker-ce=5:20.10.16~3-0~ubuntu-jammy docker-ce-cli=5:20.10.16~3-0~ubuntu-jammy containerd.io -yq
# 也可以直接安装最新版本
# sudo apt install docker-ce

# 这里需要注意的是:Ubuntu系统和CentOS系统不同,Ubuntu系统安装软件之后会默认启动
# 查看docker是否运行
systemctl status docker

# 查看版本
docker version
###############
Client: Docker Engine - Community
 Version:           20.10.16
 API version:       1.41
 Go version:        go1.17.10
 Git commit:        aa7e414
 Built:             Thu May 12 09:18:18 2022
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.16
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.17.10
  Git commit:       f756502
  Built:            Thu May 12 09:16:22 2022
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.28
  GitCommit:        ae07eda36dd25f8a1b98dfbf587313b99c0190bb
 runc:
  Version:          1.1.12
  GitCommit:        v1.1.12-0-g51d5e94
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

2、添加镜像加速

添加方式同上面centos,注意这里记录了几个目前还可以用的镜像加速地址

mkdir -p /etc/docker
cat > /etc/docker/daemon.json <<EOF
{
  
  "registry-mirrors": ["https://uyah70su.mirror.aliyuncs.com"]
}
EOF

# 使配置生效
systemctl daemon-reload

systemctl restart docker
systemctl status docker

 ## 最新镜像加速地址
 ### 2024-07-22
 mkdir -p /etc/docker
cat > /etc/docker/daemon.json <<EOF
{
  
"registry-mirrors": ["https://docker.m.daocloud.io","https://dockerpull.com","https://atomhub.openatom.cn","https://docker.1panel.live","https://dockerhub.jobcher.com","https://hub.rat.dev","https://docker.registry.cyou","https://docker.awsl9527.cn","https://do.nark.eu.org/","https://docker.ckyl.me","https://hub.uuuadc.top","https://docker.chenby.cn","https://uyah70su.mirror.aliyuncs.com"]
}
EOF

3、使用阿里源安装

如果无法连到官方,可以使用国内源进行安装,这里以阿里源为例:

# step 1: 安装必要的一些系统工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# step 2: 安装GPG证书
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# Step 3: 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# Step 4: 更新并安装Docker-CE
sudo apt-get -y update
# sudo apt-get -y install docker-ce

# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# apt-cache madison docker-ce
#   docker-ce | 17.03.1~ce-0~ubuntu-xenial | https://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
#   docker-ce | 17.03.0~ce-0~ubuntu-xenial | https://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
# Step 2: 安装指定版本的Docker-CE: (VERSION例如上面的17.03.1~ce-0~ubuntu-xenial)
# sudo apt-get -y install docker-ce=[VERSION]

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

scp免密传输教程

scp免密传输教程 为了在使用 scp 命令时不需要输入密码&#xff0c;通常的做法是通过设置 SSH 公钥认证来实现。这种方法不仅避免了每次都要输入密码的麻烦&#xff0c;而且也更加安全。下面是如何设置 SSH 公钥认证的步骤&#xff1a; 1. 生成 SSH 密钥对&#xff08;如果你…

使用Postman发送POST请求的指南

作为一名软件测试工程师&#xff0c;掌握如何使用Postman发送POST请求是非常重要的技能。POST请求通常用于向服务器发送数据&#xff0c;以创建或更新资源。本文将详细介绍如何在Postman中发送POST请求&#xff0c;帮助你高效地进行接口测试。 什么是POST请求&#xff1f; PO…

<项目代码>YOLOv8 猫狗识别<目标检测>

YOLOv8是一种单阶段&#xff08;one-stage&#xff09;检测算法&#xff0c;它将目标检测问题转化为一个回归问题&#xff0c;能够在一次前向传播过程中同时完成目标的分类和定位任务。相较于两阶段检测算法&#xff08;如Faster R-CNN&#xff09;&#xff0c;YOLOv8具有更高的…

auto占位符(C++11~C++17)

文章目录 1. 定义1.1 注意事项 2. 推导规则3. 返回类型推导(C14)4. lambda表达式中使用auto类型推导5. 非类型模板形参占位符&#xff08;C17&#xff09; 1. 定义 在C11以前&#xff0c;auto关键字是用来声明自动变量的。从C11起auto被用来&#xff1a;声明变量时根据初始化表…

栈虚拟机和寄存器虚拟机,有什么不同?

本来这节内容是打算直接讲字节码指令的&#xff0c;但讲之前又必须得先讲指令集架构&#xff0c;而指令集架构又分为两种&#xff0c;一种是基于栈的&#xff0c;一种是基于寄存器的。 那不妨我们这节就单独来讲讲栈虚拟机和寄存器虚拟机&#xff0c;它们有什么不同&#xff0…

Vision - 开源视觉分割算法框架 Grounded SAM2 配置与推理 教程 (1)

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/143388189 免责声明&#xff1a;本文来源于个人知识与公开资料&#xff0c;仅用于学术交流&#xff0c;欢迎讨论&#xff0c;不支持转载。 Ground…

vxe-table v4.8+ 与 v3.10+ 虚拟滚动支持动态行高,虚拟渲染更快了

Vxe UI vue vxe-table v4.8 与 v3.10 解决了老版本虚拟滚动不支持动态行高的问题&#xff0c;重构了虚拟渲染&#xff0c;渲染性能大幅提升了&#xff0c;行高自适应和列宽拖动都支持&#xff0c;大幅降低虚拟渲染过程中的滚动白屏&#xff0c;大量数据列表滚动更加流畅。 自适…

Docker | 将本地项目发布到阿里云的实现流程

发布到阿里云 本地镜像发布到阿里云流程具体流程1. docker commit 生成新镜像文件2. 查看镜像3. 阿里云开发者平台选择控制台&#xff0c;进入容器镜像服务&#xff0c;选择个人实例创建命名空间仓库名称进入管理界面获得脚本推送到阿里云 补充&#xff1a; docker tag 命令基本…

龙迅#LT8668EX显示器图像处理芯片 适用于HDMI1.4+VGA转4PORT LVDS,支持4K30HZ分辨率,可做OSD菜单亮度调节!

1. 一般说明 LT8668EX 是 Lontium 的第二代 LCD 控制器&#xff0c;基于 ClearEdge 技术&#xff0c;支持 VGA 接口和 HDMI 接口&#xff0c;符合 HDMI 1.4 规范。它可以支持带 HDMI 接口的双模 DP。为了向后兼容&#xff0c;该 LCD 控制器还包括一个高性能模拟接口&#xff0…

如何在Linux系统中使用Apache HTTP Server

如何在Linux系统中使用Apache HTTP Server Apache简介 安装Apache 在Debian/Ubuntu系统中安装 在CentOS/RHEL系统中安装 启动Apache服务 验证Apache是否正在运行 访问Apache默认页面 配置Apache虚拟主机 创建虚拟主机配置文件 示例虚拟主机配置 创建网站根目录 准备静态网站内…

【大模型开发指南】llamaindex配置deepseek、jina embedding及chromadb实现本地RAG及知识库(win系统、CPU适配)

说一些坑&#xff0c;本来之前准备用milvus&#xff0c;但是发现win搞不了&#xff08;docker都配好了&#xff09;。然后转头搞chromadb。这里面还有就是embedding一般都是本地部署&#xff0c;但我电脑是cpu的没法玩&#xff0c;我就选了jina的embedding性能较优&#xff08;…

拔得头筹 | 怿星科技斩获第四届“乌镇杯”高层次人才创业创新大赛一等奖

10月31日&#xff0c;第四届“乌镇杯”高层次人才创业创新大赛总决赛在桐乡市隆重举行&#xff0c;怿星科技“智能汽车软件研发测试工具链”项目成功入围总决赛&#xff0c;并荣获“人工智能”赛道一等奖。 本次大赛以“e城桐创智领未来”为主题&#xff0c;围绕桐乡市重点产业…

鸢尾博客项目总结

1.博客介绍 鸢尾博客是一个基于Spring BootVue3 TypeScript ViteJavaFx的客户端和服务器端的博客系统。项目采用前端与后端分离&#xff0c;支持移动端自适应&#xff0c;配有完备的前台和后台管理功能。后端使用Sa-Token进行权限管理,支持动态菜单权限&#xff0c;服务健康…

Installshield 总是跳出 Activation 激活对话框,而且创建项目失败

今天打开InstallShield &#xff0c;总是出现这个对话框&#xff0c;而且输入序列号后&#xff0c;虽然现实激活&#xff0c;但是无论打开原来的项目&#xff0c;还是新建项目都是失败。 解决方法&#xff1a; 一直没有思路&#xff0c;后来&#xff0c;使用管理员打开VS&#…

TLV320AIC3104IRHBR 数据手册 一款低功耗立体声音频编解码器 立体声耳机放大器芯片麦克风

TLV320AIC3104 是一款低功耗立体声音频编解码器&#xff0c;具有立体声耳机放大器以及在单端或全差分配置下可编程的多个输入和输出。该器件包括基于寄存器的全面电源控制&#xff0c;可实现立体声 48kHz DAC 回放&#xff0c;在 3.3V 模拟电源电压下的功耗低至 14mW&#xff0…

11月第一篇新作,十一月对我好一点:C++之继承(2)

C之继承&#xff08;2&#xff09; 虚继承 很多⼈说C语法复杂&#xff0c;其实多继承就是⼀个体现。有了多继承&#xff0c;就存在菱形继承&#xff0c;有了菱形继承就有 菱形虚拟继承&#xff0c;底层实现就很复杂&#xff0c;性能也会有⼀些损失&#xff0c;所以最好不要设计…

uni-app 封装图表功能

文章目录 需求分析1. 秋云 uchars2. Echarts 需求 在 uni-app 中使用图表功能&#xff0c;两种推荐的图表工具 分析 在 Dcloud市场 搜索Echarts关键词&#xff0c;会出现几款图表工具&#xff0c;通过大家的下载量&#xff0c;可以看到秋云这个库是比较受欢迎的&#xff0c;其…

FemtoMega的开发者模式教程

1.FemtoMega相机简介 Femto Mega作为奥比中光联合微软、英伟达共同推出的全新升级iToF相机&#xff0c;整合英伟达算力及微软深度引擎技术&#xff0c;整机具备高通用性优势&#xff0c;集成深度算力无需额外算力&#xff0c;此外还支持POE网络接口&#xff0c;支持远程的部署和…

基于SpringBoot的健身房系统的设计与实现(源码+定制+开发)

博主介绍&#xff1a; ✌我是阿龙&#xff0c;一名专注于Java技术领域的程序员&#xff0c;全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师&#xff0c;我在计算机毕业设计开发方面积累了丰富的经验。同时&#xff0c;我也是掘金、华为云、阿里云、InfoQ等平台…

索引的使用以及使用索引优化sql

索引就是一种快速查询和检索数据的数据结构&#xff0c;mysql中的索引结构有&#xff1a;B树和Hash。 索引的作用就相当于目录的作用&#xff0c;我么只需先去目录里面查找字的位置&#xff0c;然后回家诶翻到那一页就行了&#xff0c;这样查找非常快&#xff0c; 一、索引的使…