Ubuntu 22.04 Docker安装笔记
1、准备一台虚机

可以根据《VMware Workstation安装Ubuntu 22.04笔记》来准备虚拟机。完成后,根据需求安装必要的软件,并设置root权限进行登录。
sudo apt update
sudo apt install iputils-ping -y
sudo apt install vim -y允许root ssh登录:
sudo passwd root
sudo vi /etc/ssh/sshd_config
...
#PermitRootLogin prohibit-password
PermitRootLogin yes <--新增配置
...
sudo /etc/init.d/ssh stop
sudo /etc/init.d/ssh start
sudo service ssh restart其他相关信息:root@host1:~# hostname
host1root@host1:~# uname -a
Linux host1 5.15.0-117-generic #127-Ubuntu SMP Fri Jul 5 20:13:28 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
root@host1:~# cat /etc/*release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=22.04
DISTRIB_CODENAME=jammy
DISTRIB_DESCRIPTION="Ubuntu 22.04.4 LTS"
PRETTY_NAME="Ubuntu 22.04.4 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.4 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy
root@host1:~# root@host1:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000link/ether 00:0c:29:ba:cd:1a brd ff:ff:ff:ff:ff:ffaltname enp2s0inet 10.0.20.61/24 brd 10.0.20.255 scope global ens32valid_lft forever preferred_lft foreverinet6 fe80::20c:29ff:feba:cd1a/64 scope link valid_lft forever preferred_lft forever
3: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000link/ether 00:0c:29:ba:cd:24 brd ff:ff:ff:ff:ff:ffaltname enp2s1inet6 fe80::20c:29ff:feba:cd24/64 scope link valid_lft forever preferred_lft forever
2、Docker安装
Docker是一个开源的软件平台,它允许你通过容器化技术来构建、测试和运行应用程序。容器化是一种轻量级、可移植的、自给自足的软件运行方式,它使得应用程序及其依赖项可以被打包在一起,从而简化了软件的部署和管理。
Docker为Ubuntu提供了一个官方的APT仓库,这使得在Ubuntu系统上安装Docker变得非常简单。以下是在Ubuntu 22.04上安装Docker的步骤:
1. 更新包索引
更新本地包索引以确保安装的是最新版本的软件包。
root@host1:~# apt update
2. 安装所需的软件包
root@host1:~# apt install -y apt-transport-https ca-certificates curl software-properties-common
apt-transport-https: 这个软件包提供了通过 HTTPS 协议获取软件包的能力。ca-certificates: 包含用于验证 HTTPS 连接的证书。curl: 是一个命令行工具和库,用于传输数据,支持多种协议,包括 HTTP、HTTPS 和 FTP。software-properties-common: 包含用于添加和管理软件源的工具。
3. 添加 Docker 的官方 GPG 密钥到 Ubuntu 系统
root@host1:~# curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpgroot@host1:~# ls /usr/share/keyrings/docker-archive-keyring.gpg
/usr/share/keyrings/docker-archive-keyring.gpg
root@host1:~#
curl: 是一个命令行工具,用于从或向服务器传输数据。-fsSL: 选项组合:
-f或-fail:服务器返回失败的HTTP状态码时不显示错误。-s或--silent:静默或无输出模式。-S或--show-error:在出现问题时显示错误。-L或--location:跟随重定向。https://download.docker.com/linux/ubuntu/gpg: 是 Docker 官方的 GPG 密钥的 URL。|: 是管道操作符,将前一个命令的输出作为后一个命令的输入。sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg: 这个命令使用gpg工具将通过管道接收到的密钥转换为二进制格式,并将其输出到指定的文件路径。
4. 将 Docker 的官方软件源添加到 Ubuntu 的 APT 软件源列表中
root@host1:~# echo "deb [arch=amd64 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
执行这个命令后,Docker 的官方软件源将被添加到您的系统软件源列表中,APT 将能够从这个源安装 Docker。
5. 在 Ubuntu 系统中安装 Docker CE(社区版)及其命令行接口(CLI)和 containerd.io 容器运行时:
root@host1:~# apt update
root@host1:~# apt install -y docker-ce docker-ce-cli containerd.io
6. 设置 Docker 服务在系统启动时自动启动
root@host1:~# systemctl enable docker
Synchronizing state of docker.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable docker
root@host1:~#
7. 显示当前安装的 Docker 版本信息
root@host1:~# docker --version
Docker version 27.1.1, build 6312585root@host1:~# systemctl status docker
● docker.service - Docker Application Container EngineLoaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)Active: active (running) since Tue 2024-08-06 02:27:10 UTC; 2min 49s ago
TriggeredBy: ● docker.socketDocs: https://docs.docker.comMain PID: 2050 (dockerd)Tasks: 10Memory: 22.0MCPU: 321msCGroup: /system.slice/docker.service└─2050 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sockAug 06 02:27:09 host1 systemd[1]: Starting Docker Application Container Engine...
Aug 06 02:27:09 host1 dockerd[2050]: time="2024-08-06T02:27:09.804576515Z" level=info msg="Starting up"
Aug 06 02:27:09 host1 dockerd[2050]: time="2024-08-06T02:27:09.805423605Z" level=info msg="detected 127.0.0.53 nameserver, assuming systemd-resolved, so using resolv.conf: /run/systemd/resolve/resolv.conf"
Aug 06 02:27:09 host1 dockerd[2050]: time="2024-08-06T02:27:09.886376001Z" level=info msg="Loading containers: start."
Aug 06 02:27:10 host1 dockerd[2050]: time="2024-08-06T02:27:10.259919206Z" level=info msg="Loading containers: done."
Aug 06 02:27:10 host1 dockerd[2050]: time="2024-08-06T02:27:10.278184800Z" level=info msg="Docker daemon" commit=cc13f95 containerd-snapshotter=false storage-driver=overlay2 version=27.1.1
Aug 06 02:27:10 host1 dockerd[2050]: time="2024-08-06T02:27:10.278390653Z" level=info msg="Daemon has completed initialization"
Aug 06 02:27:10 host1 dockerd[2050]: time="2024-08-06T02:27:10.319697168Z" level=info msg="API listen on /run/docker.sock"
Aug 06 02:27:10 host1 systemd[1]: Started Docker Application Container Engine.
root@host1:~#
8. 测试 Docker 是否正确安装
root@host1:~# docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
c1ec31eb5944: Pull complete
Digest: sha256:1408fec50309afee38f3535383f5b09419e6dc0925bc69891e79d84cc4cdcec6
Status: Downloaded newer image for hello-world:latestHello from Docker!
This message shows that your installation appears to be working correctly.To generate this message, Docker took the following steps:1. The Docker client contacted the Docker daemon.2. The Docker daemon pulled the "hello-world" image from the Docker Hub.(amd64)3. The Docker daemon created a new container from that image which runs theexecutable that produces the output you are currently reading.4. The Docker daemon streamed that output to the Docker client, which sent itto your terminal.To try something more ambitious, you can run an Ubuntu container with:$ docker run -it ubuntu bashShare images, automate workflows, and more with a free Docker ID:https://hub.docker.com/For more examples and ideas, visit:https://docs.docker.com/get-started/root@host1:~#
3、Docker使用
3.1 docker pull 下载镜像
1、从Docker Hub(Docker的官方镜像仓库)下载标签为 22.04 的Ubuntu镜像:root@host1:~# docker pull ubuntu:22.04
22.04: Pulling from library/ubuntu
3713021b0277: Pull complete
Digest: sha256:340d9b015b194dc6e2a13938944e0d016e57b9679963fdeb9ce021daac430221
Status: Downloaded newer image for ubuntu:22.04
docker.io/library/ubuntu:22.042、列出本地的Docker镜像:root@host1:~# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu 22.04 8a3cdc4d1ad3 5 weeks ago 77.9MB
hello-world latest d2c94e258dcb 15 months ago 13.3kB
3.2 docker run 启动容器
在Docker中创建并启动一个名为 test1 的新容器,使用 ubuntu:22.04 镜像,并提供一个交互式的bash shell:
root@host1:~# docker run --name test1 -it ubuntu:22.04 /bin/bash
root@33d9582b76bf:/# exit
exit
root@host1:~#
-it:这是一个组合选项,-i表示交互式,-t表示分配一个伪终端。这个选项允许你与容器内的进程进行交互
/bin/bash:这是容器启动后要运行的命令,即启动bash shell
执行这个命令后,Docker会做以下几件事:
- 检查本地是否有
ubuntu:22.04镜像,如果没有,它会从Docker Hub下载这个镜像。 - 使用这个镜像创建一个新的容器,命名为
test1。 - 启动容器,并提供一个交互式的bash shell,允许你执行命令和操作。
- 要退出终端,直接输入 exit。
启动容器,同时后台运行:
root@host1:~# docker run --name test2 -itd ubuntu:22.04 /bin/bash
13406586d37f4dceadf75d49643d401cbc806d81e48a085f54969e279ab593ee
3.3 docker ps 列出容器
列出所有容器,包括正在运行的和已经停止的容器:
root@host1:~# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
13406586d37f ubuntu:22.04 "/bin/bash" About a minute ago Up About a minute test2
33d9582b76bf ubuntu:22.04 "/bin/bash" 23 minutes ago Exited (137) 4 seconds ago test1
6843deb526c2 hello-world "/hello" 11 hours ago Exited (0) 11 hours ago great_booth
root@host1:~#
只列出正在运行的容器:
root@host1:~# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
13406586d37f ubuntu:22.04 "/bin/bash" About a minute ago Up About a minute test2
root@host1:~#
3.4 docker start启动已经停止的容器
root@host1:~# docker start test1
test1
root@host1:~# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
13406586d37f ubuntu:22.04 "/bin/bash" 2 minutes ago Up 2 minutes test2
33d9582b76bf ubuntu:22.04 "/bin/bash" 24 minutes ago Up 4 seconds test1
root@host1:~# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
13406586d37f ubuntu:22.04 "/bin/bash" 2 minutes ago Up 2 minutes test2
33d9582b76bf ubuntu:22.04 "/bin/bash" 24 minutes ago Up 8 seconds test1
6843deb526c2 hello-world "/hello" 11 hours ago Exited (0) 11 hours ago great_booth
root@host1:~#
3.5 docker stop 停止容器
root@host1:~# docker stop test1
test1
3.6 docker restart 重启容器
root@host1:~# docker restart test1
test1
root@host1:~# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
13406586d37f ubuntu:22.04 "/bin/bash" 8 minutes ago Up 8 minutes test2
33d9582b76bf ubuntu:22.04 "/bin/bash" 30 minutes ago Up 4 seconds test1
root@host1:~#
docker start和docker restart区别:
docker start仅用于启动已经停止的容器,不会重新初始化容器的启动命令。docker restart可以用于重启正在运行的容器,或者重新启动已经停止的容器,并且会重新执行容器的启动命令。使用场景:
- 如果你需要重新激活一个已经停止的容器,并且希望它从停止时的状态继续运行,使用
docker start。- 如果你需要重置容器的状态,或者容器需要在重启时重新加载配置或执行初始化命令,使用
docker restart。
3.7 docker attach进入容器
docker run -itd方式,启动容器会进入后台;或者docker start/restart,重新启动的容器也会进入后台。此时,要进入容器,可以使用docker attach,执行exit退出容器:
root@host1:~# docker attach test1
root@33d9582b76bf:/#
root@33d9582b76bf:/# exit
exit
root@host1:~# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
13406586d37f ubuntu:22.04 "/bin/bash" 13 minutes ago Up 13 minutes test2
root@host1:~#
3.8 docker exec进入容器
root@host1:~# docker start test1
test1
root@host1:~# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
13406586d37f ubuntu:22.04 "/bin/bash" 20 minutes ago Up 20 minutes test2
33d9582b76bf ubuntu:22.04 "/bin/bash" 42 minutes ago Up 3 seconds test1
root@host1:~# docker exec -it 33d9582b76bf /bin/bash
root@33d9582b76bf:/#
root@33d9582b76bf:/# exit
exit
root@host1:~# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
13406586d37f ubuntu:22.04 "/bin/bash" 20 minutes ago Up 20 minutes test2
33d9582b76bf ubuntu:22.04 "/bin/bash" 43 minutes ago Up 42 seconds test1
root@host1:~#
使用docker exec进入容器,如果从这个容器退出,容器不会停止。
3.9 docker rm 删除容器
root@host1:~# docker rm -f test1
test1
root@host1:~# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
13406586d37f ubuntu:22.04 "/bin/bash" 26 minutes ago Up 26 minutes test2
6843deb526c2 hello-world "/hello" 12 hours ago Exited (0) 12 hours ago great_booth
root@host1:~#
4、容器之间相互Ping通
1、进入容器test1/test2,并安装相应软件:
容器test1安装软件:
root@host1:~# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e6fb111b9b11 ubuntu:22.04 "/bin/bash" 3 seconds ago Up 3 seconds test1
13406586d37f ubuntu:22.04 "/bin/bash" 30 minutes ago Up 30 minutes test2
root@host1:~# docker exec -it e6fb111b9b11 /bin/bash
root@e6fb111b9b11:/# ip a
bash: ip: command not found
root@e6fb111b9b11:/# apt update
root@e6fb111b9b11:/# apt install iproute2
root@e6fb111b9b11:/# apt install inetutils-ping -yroot@e6fb111b9b11:/# exit
exit容器test2安装软件:
root@host1:~# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e6fb111b9b11 ubuntu:22.04 "/bin/bash" 5 minutes ago Up 5 minutes test1
13406586d37f ubuntu:22.04 "/bin/bash" 35 minutes ago Up 35 minutes test2
root@host1:~#
root@host1:~# docker exec -it 13406586d37f /bin/bash
root@13406586d37f:/# apt update
2、查看容器ip地址信息,并相互ping
root@host1:~# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e6fb111b9b11 ubuntu:22.04 "/bin/bash" 10 minutes ago Up 10 minutes test1
13406586d37f ubuntu:22.04 "/bin/bash" 40 minutes ago Up 40 minutes test2进入容器test1:
root@host1:~# docker exec -it e6fb111b9b11 /bin/bash
root@e6fb111b9b11:/# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever
23: eth0@if24: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff link-netnsid 0inet 172.17.0.2/16 brd 172.17.255.255 scope global eth0valid_lft forever preferred_lft forever
root@e6fb111b9b11:/# 进入容器test2:
root@host1:~# docker exec -it 13406586d37f /bin/bash
root@13406586d37f:/# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever
15: eth0@if16: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default link/ether 02:42:ac:11:00:03 brd ff:ff:ff:ff:ff:ff link-netnsid 0inet 172.17.0.3/16 brd 172.17.255.255 scope global eth0valid_lft forever preferred_lft forever容器test2 ping 容器test1:
root@e6fb111b9b11:/# ping 172.17.0.2
PING 172.17.0.2 (172.17.0.2): 56 data bytes
64 bytes from 172.17.0.2: icmp_seq=0 ttl=64 time=0.061 ms
64 bytes from 172.17.0.2: icmp_seq=1 ttl=64 time=0.040 ms
64 bytes from 172.17.0.2: icmp_seq=2 ttl=64 time=0.033 ms
^C--- 172.17.0.2 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.033/0.045/0.061/0.000 ms
root@e6fb111b9b11:/#
相关文章:
Ubuntu 22.04 Docker安装笔记
1、准备一台虚机 可以根据《VMware Workstation安装Ubuntu 22.04笔记》来准备虚拟机。完成后,根据需求安装必要的软件,并设置root权限进行登录。 sudo apt update sudo apt install iputils-ping -y sudo apt install vim -y允许root ssh登录࿱…...
编程-设计模式 6:适配器模式
设计模式 6:适配器模式 定义与目的 定义:适配器模式将一个类的接口转换成客户希望的另一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。目的:该模式的主要目的是解决接口不匹配的问题,使得一个…...
ERC721 概念解释
目录 FeaturesVotesAccess ControlUpgradeabilityFeatures Mintable: 允许创建新的代币(minting)。合约的所有者或有权限的账户可以调用 mint 函数来生成新的代币,并将其分配给指定的地址。 Auto Increment Ids:自动递增 ID。每次创建新的代币时,代币的 ID 会自动递增,确保…...
数据结构(其五)--串
目录 12.串 12.1 基本操作 12.2 串的存储结构 12.3 字符串的模式匹配算法 (1).朴素模式匹配算法 (2).KMP算法 i.next[]数组的求解 ii.next[]数组的优化——nextval数组 iii.手算nextval数组 iiii.机算nextval数组 + KMP函数 12.串 串,即字符串(string),由零个或多…...
LeetCode Hot100 LRU缓存
请你设计并实现一个满足 LRU (最近最少使用) 缓存 约束的数据结构。 实现 LRUCache 类: LRUCache(int capacity) 以 正整数 作为容量 capacity 初始化 LRU 缓存int get(int key) 如果关键字 key 存在于缓存中,则返回关键字的值,否则返回 -…...
GESP C++ 2024年06月一级真题卷
一、单选题(每题 2 分,共 30 分) 第 1 题 在 C 中,下列不可做变量的是 ( ) 。 A. five-Star B. five_star C. fiveStar D. _fiveStar 答案:A 解析:标识符命名规则,标识符由字母、数…...
在 Ubuntu Server 上配置静态 IP 地址
在 Ubuntu Server 上配置静态 IP 地址 测试时使用的Ubuntu server版本是22.04 一、Ubuntu 17.10之前版本 使用 ifupdown 配置文件来设置静态 IP。配置文件通常位于 /etc/network/interfaces。 1.1 编辑 /etc/network/interfaces 文件: sudo vim /etc/network/in…...
数据结构——栈的讲解(超详细)
前言: 小编已经在前面讲完了链表和顺序表的内容,下面我们继续乘胜追击,开始另一个数据结构:栈的详解,下面跟上小编的脚步,开启今天的学习之路! 目录 1.栈的概念和结构 1.1.栈的概念 1.2.栈的结构…...
三防平板助力MES系统,实现工厂移动式生产报工
在当今竞争激烈的制造业环境中,提高生产效率、优化生产流程以及实现精准的生产管理已经成为企业生存和发展的关键。 MES系统作为连接企业计划层和控制层的桥梁,在实现生产过程的信息化、数字化和智能化方面发挥着重要作用。与此同时,三防平板…...
WEB渗透Bypass篇-常规函数绕过
常规函数绕过 <?php echo exec(whoami);?> ------------------------------------------------------ <?php echo shell_exec(whoami);?> ------------------------------------------------------ <?php system(whoami);?> ------------------------…...
C++从入门到起飞之——string类的模拟实现 全方位剖析!
🌈个人主页:秋风起,再归来~🔥系列专栏:C从入门到起飞 🔖克心守己,律己则安 目录 1、多文件之间的关系 2、模拟实现常用的构造函数 2.1 无参构造函数 2.2 有参的构造函数 2.3 析构函…...
数据库国产化大趋势下,还需要学习Oracle吗?
由于众所周知的原因,近两年各行各业都开始了数据库国产化替代的进程,从国外商业数据库替换到国产或者开源数据库,相信很多的数据库从业人员会把部分精力转移到其他数据库产品的学习中,也有一些人在大肆的宣扬Oracle已经过时了&…...
WebLogic
二、WebLogic 2.1 后台弱口令GetShell 漏洞描述 通过弱口令进入后台界面,上传部署war包,getshell 影响范围 全版本(前提后台存在弱口令) 漏洞复现 默认账号密码:weblogic/Oracle123weblogic常用弱口令: Default Passwords | CIRT.net这里注意&am…...
Aspose.Words.dll 插入模板表格,使用的是邮件合并MailMerge功能,数据源是DataTable或list对象,实例
本实例中的实例功能有: 1、 Aspose.Words.dll 插入模板指定域替换为文字或html标签,见1 2、Aspose.Words.dll 插入模板表格,使用的是邮件合并MailMerge功能,数据源是DataTable或List对象(将list转换成DataTable),见1和2 3、word转换Pdf文件,见1 4、将多个word输出文…...
同时打开多个微信
注: 以下方法用到的 D:\微信\WeChat\WeChat.exe是我的电脑微信路径,可右击桌面微信快捷方式 > 属性 > 目标查看 以下方法都需要先关掉已登录的微信后操作 <一> 找到微信路径 新建一个txt文件输入以下内容 start D:\微信\WeChat\WeChat.exe …...
MPU6050的STM32数据读取
目录 1. 概述2. STM32G030对MPU6050的读取3. STM32F1xx对MPU6050的读取 1. 概述 项目中,往往需要根据不同的环境使用不同的芯片处理某些数据,当使用不同的芯片对六轴陀螺仪芯片MPU6050进行数据处理中,硬件的连接、I/O口的设置往往需要根据相…...
【微信小程序开发】——奶茶点餐小程序的制作(二)
👨💻个人主页:开发者-曼亿点 👨💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨💻 本文由 曼亿点 原创 👨💻 收录于专栏:…...
Java 文件上传七牛云
Java系列文章目录 文章目录 Java系列文章目录一、前言二、学习内容:三、问题描述四、解决方案:4.1 新建空间4.2 查找密钥4.3 进入开发者中心查找JavaSDK文档4.4 查找文件上传方法4.5 运行测试 五、总结:5.1 学习总结: 一、前言 学…...
大语言模型生成无人系统(如机械臂、无人机等)可以执行的指令序列
大语言模型生成无人系统(如机械臂、无人机等)可以执行的指令序列涉及将自然语言指令转化为具体的、可执行的指令集合。以下是一个详细的流程,展示了如何从自然语言指令生成无人系统的执行指令序列。 1. 输入自然语言指令 用户输入自然语言指…...
尚硅谷谷粒商城项目笔记——十、调试前端项目renren-fast-vue【电脑CPU:AMD】
十、调试前端项目renren-fast-vue 如果遇到其他问题发在评论区,我看到后解决 1 先下载安装git git官网下载地址 2 登录gitee搜索人人开源找到renren-fast-vue复制下载链接。【网课视频中也有详细步骤】 3 下载完成后桌面会出现renren-fast-vue的文件夹 4 开始调…...
铭豹扩展坞 USB转网口 突然无法识别解决方法
当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…...
DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径
目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...
Oracle查询表空间大小
1 查询数据库中所有的表空间以及表空间所占空间的大小 SELECTtablespace_name,sum( bytes ) / 1024 / 1024 FROMdba_data_files GROUP BYtablespace_name; 2 Oracle查询表空间大小及每个表所占空间的大小 SELECTtablespace_name,file_id,file_name,round( bytes / ( 1024 …...
在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:
在 HarmonyOS 应用开发中,手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力,既支持点击、长按、拖拽等基础单一手势的精细控制,也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档,…...
SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...
深入理解JavaScript设计模式之单例模式
目录 什么是单例模式为什么需要单例模式常见应用场景包括 单例模式实现透明单例模式实现不透明单例模式用代理实现单例模式javaScript中的单例模式使用命名空间使用闭包封装私有变量 惰性单例通用的惰性单例 结语 什么是单例模式 单例模式(Singleton Pattern&#…...
Qt Http Server模块功能及架构
Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...
第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明
AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...
Ascend NPU上适配Step-Audio模型
1 概述 1.1 简述 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统,支持多语言对话(如 中文,英文,日语),语音情感(如 开心,悲伤)&#x…...
NLP学习路线图(二十三):长短期记忆网络(LSTM)
在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...
