Linux下 Docker容器引擎基础(1)

news2024/11/25 9:40:27

简述:

Docker的容器技术可以在一台主机上轻松为任何应用创建一个轻量级的、可移植的、自给自足的容器。通过这种容器打包应用程序,意味着简化了重新部署、调试这些琐碎的重复工作,极大的提高了工作效率。例如:项目从腾讯云迁移阿里云,如果采用了Docker容器技术,迁移只需要在新的云服务器上启动项目需要的容器即可。

随着云计算DevOps生态圈的蓬勃发展,产生了大量优秀的系统和软件。软件开发人员可以自由选择各种软件应用环境。但同时带来的问题就是需要维护一个非常庞大的开发(Dev)、测试(Test)、预上线(UAT)和生产环境(Pro)。面对这种情况,Docker容器技术横空出世、提供了简单、灵活、高效的解决方案,不需要过多地改变现有的使用习惯,就可以和已有的工具进行整合。因此,掌握Docker相关技术也是途径云计算的必经之路。

Docker是在Linux容器里运行应用的开源容器管理工具,可以理解为轻量级的“虚拟机”。它诞生于 2013 年初,最初是 DotCloud 公司内部商业版项目,后来更换架构师,此架构师将Docker进行了开源,导致Docker使用人员增多。基于 Google公司推出的 Go(Golang) 语言开发。该项目后来加入了Linux基金会,遵从了Apache 2.0协议进行推广,项目代码在 GitHub(https://github.com/docker)上进行维护。

Docker 自开源后受到广泛的业内人士及社区的关注,以至于DotCloud公司后来都改名为 Docker Inc。RedHat系列系统从 RHEL6.5 版本开始支持 Docker;Google 也在其 PaaS 产品中广泛应用。

官方网站:Docker: Accelerated, Containerized Application Development

环境:选择虚拟化引擎

 关闭防火墙规则

[root@localhost ~]# iptables -F

[root@localhost ~]# setenforce 0

[root@localhost ~]# systemctl stop firewalld

yum安装docker

[root@localhost yum.repos.d]# yum -y install docker

启动并设置开机启动

[root@localhost yum.repos.d]#  systemctl start docker

[root@localhost yum.repos.d]#  systemctl enable docker

Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.

[root@localhost yum.repos.d]# docker version

Client:

 Version:         1.13.1

 API version:     1.26

 Package version: docker-1.13.1-209.git7d71120.el7.centos.x86_64

 Go version:      go1.10.3

 Git commit:      7d71120/1.13.1

 Built:           Wed Mar  2 15:25:43 2022

 OS/Arch:         linux/amd64

Server:

 Version:         1.13.1

 API version:     1.26 (minimum version 1.12)

 Package version: docker-1.13.1-209.git7d71120.el7.centos.x86_64

 Go version:      go1.10.3

 Git commit:      7d71120/1.13.1

 Built:           Wed Mar  2 15:25:43 2022

 OS/Arch:         linux/amd64

 Experimental:    false

 安装docker-ce

[root@localhost yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

--2023-07-31 13:39:06--  http://mirrors.aliyun.com/repo/Centos-7.repo

正在解析主机 mirrors.aliyun.com (mirrors.aliyun.com)... 42.202.211.87, 42.202.211.96, 124.238.244.137, ...

正在连接 mirrors.aliyun.com (mirrors.aliyun.com)|42.202.211.87|:80... 已连接。

已发出 HTTP 请求,正在等待回应... 200 OK

长度:2523 (2.5K) [application/octet-stream]

正在保存至: “/etc/yum.repos.d/CentOS-Base.repo”

100%[=============================================================>] 2,523       --.-K/s 用时 0s      

2023-07-31 13:39:06 (257 MB/s) - 已保存 “/etc/yum.repos.d/CentOS-Base.repo” [2523/2523])

[root@localhost yum.repos.d]# yum -y install yum-utils device-mapper-persistent-data lvm2

[root@localhost yum.repos.d]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

[root@localhost yum.repos.d]# ll

-rw-r--r--. 1 root root 2081 7月  31 13:43 docker-ce.repo

[root@localhost yum.repos.d]# yum -y install docker-ce

[root@localhost yum.repos.d]# systemctl start docker

[root@localhost yum.repos.d]# systemctl enable docker

 阿里云镜像加速

[root@localhost yum.repos.d]#  cat << END > /etc/docker/daemon.json

> {

>         "registry-mirrors":[ "https://nyakyfun.mirror.aliyuncs.com" ]

> }

> END

[root@localhost yum.repos.d]# vim /etc/docker/daemon.json

{

        "registry-mirrors":[ "https://nyakyfun.mirror.aliyuncs.com" ]

}

[root@localhost yum.repos.d]# systemctl daemon-reload

[root@localhost yum.repos.d]# systemctl restart docker

查看基本信息

[root@localhost yum.repos.d]# docker version

Client:

 Version:         1.13.1

 API version:     1.26

 Package version: docker-1.13.1-209.git7d71120.el7.centos.x86_64

 Go version:      go1.10.3

 Git commit:      7d71120/1.13.1

 Built:           Wed Mar  2 15:25:43 2022

 OS/Arch:         linux/amd64

Server:

 Version:         1.13.1

 API version:     1.26 (minimum version 1.12)

 Package version: docker-1.13.1-209.git7d71120.el7.centos.x86_64

 Go version:      go1.10.3

 Git commit:      7d71120/1.13.1

 Built:           Wed Mar  2 15:25:43 2022

 OS/Arch:         linux/amd64

 Experimental:    false

查看详细信息

[root@localhost yum.repos.d]# docker info

Containers: 0

 Running: 0

 Paused: 0

 Stopped: 0

Images: 0

Server Version: 1.13.1

Storage Driver: overlay2

 Backing Filesystem: xfs

 Supports d_type: true

 Native Overlay Diff: true

Logging Driver: journald

Cgroup Driver: systemd

Plugins:

 Volume: local

 Network: bridge host macvlan null overlay

Swarm: inactive

Runtimes: docker-runc runc

Default Runtime: docker-runc

Init Binary: /usr/libexec/docker/docker-init-current

containerd version:  (expected: aa8187dbd3b7ad67d8e5e3a15115d3eef43a7ed1)

runc version: 8891bca22c049cd2dcf13ba2438c0bac8d7f3343 (expected: 9df8b306d01f59d3a8029be411de015b7304dd8f)

init version: fec3683b971d9c3ef73f284f176672c44b448662 (expected: 949e6facb77383876aeff8a6944dde66b3089574)

Security Options:

 seccomp

  WARNING: You're not using the default seccomp profile

  Profile: /etc/docker/seccomp.json

 selinux

Kernel Version: 3.10.0-1160.92.1.el7.x86_64

Operating System: CentOS Linux 7 (Core)

OSType: linux

Architecture: x86_64

Number of Docker Hooks: 3

CPUs: 1

Total Memory: 3.682 GiB

Name: localhost.localdomain

ID: U54H:7JJ6:COSW:UIMR:LSNL:FP7H:NANJ:NJPQ:K6FZ:3DMR:J26D:LWRR

Docker Root Dir: /var/lib/docker

Debug Mode (client): false

Debug Mode (server): false

Registry: https://index.docker.io/v1/

Experimental: false

Insecure Registries:

 127.0.0.0/8

Registry Mirrors:

 https://nyakyfun.mirror.aliyuncs.com

Live Restore Enabled: false

Registries: docker.io (secure)

Docker镜像操作

搜索镜像  命令格式:docker search 关键字

 下载nginx镜像

 

 

[root@localhost ~]# docker pull nginx

Using default tag: latest

Trying to pull repository docker.io/library/nginx ...

latest: Pulling from docker.io/library/nginx

a2abf6c4d29d: Pull complete

a9edb18cadd1: Pull complete

589b7251471a: Pull complete

186b1aaa4aa6: Pull complete

b4df32aa5a72: Pull complete

a0bcbecc962e: Pull complete

Digest: sha256:0d17b565c37bcbd895e9d92315a05c1c3c9a29f762b011a10c54a66cd53c9b31

Status: Downloaded newer image for docker.io/nginx:latest

下载centos镜像

[root@localhost ~]#  docker pull centos

Using default tag: latest

Trying to pull repository docker.io/library/centos ...

latest: Pulling from docker.io/library/centos

a1d0c7532777: Pull complete

Digest: sha256:a27fd8080b517143cbbbab9dfb7c8571c40d67d534bbdee55bd6c473f432b177

Status: Downloaded newer image for docker.io/centos:latest

查看所有镜像信息

[root@localhost ~]#   docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

docker.io/nginx     latest              605c77e624dd        19 months ago       141 MB

docker.io/centos    latest              5d0da3dc9764        22 months ago       231 MB

查看指定镜像信息   命令格式:docker inspect 镜像名或镜像ID

为镜像添加标签(类似软连接)

[root@localhost ~]# docker tag nginx nginx:ttt

[root@localhost ~]# docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

docker.io/nginx     latest              605c77e624dd        19 months ago       141 MB

nginx               ttt                 605c77e624dd        19 months ago       141 MB

docker.io/centos    latest              5d0da3dc9764        22 months ago       231 MB

删除

[root@localhost ~]# docker rmi nginx:ttt

Untagged: nginx:ttt

Untagged: docker.io/nginx@sha256:0d17b565c37bcbd895e9d92315a05c1c3c9a29f762b011a10c54a66cd53c9b31

[root@localhost ~]# docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

docker.io/nginx     latest              605c77e624dd        19 months ago       141 MB

docker.io/centos    latest              5d0da3dc9764        22 months ago       231 MB

 把镜像存到本地文件

命令格式:docker save -o 存出镜像为本地文件 镜像名

[root@localhost ~]# docker save -o nginx-images nginx

[root@localhost ~]# ls

anaconda-ks.cfg  nginx-images

 验证

[root@localhost ~]# docker rmi nginx

Untagged: nginx:latest

Deleted: sha256:605c77e624ddb75e6110f997c58876baa13f8754486b461117934b24a9dc3a85

Deleted: sha256:b625d8e29573fa369e799ca7c5df8b7a902126d2b7cbeb390af59e4b9e1210c5

Deleted: sha256:7850d382fb05e393e211067c5ca0aada2111fcbe550a90fed04d1c634bd31a14

Deleted: sha256:02b80ac2055edd757a996c3d554e6a8906fd3521e14d1227440afd5163a5f1c4

Deleted: sha256:b92aa5824592ecb46e6d169f8e694a99150ccef01a2aabea7b9c02356cdabe7c

Deleted: sha256:780238f18c540007376dd5e904f583896a69fe620876cabc06977a3af4ba4fb5

Deleted: sha256:2edcec3590a4ec7f40cf0743c15d78fb39d8326bc029073b41ef9727da6c851f

[root@localhost ~]# docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

docker.io/centos    latest              5d0da3dc9764        22 months ago       231 MB

[root@localhost ~]# docker load<nginx-images

2edcec3590a4: Loading layer 83.86 MB/83.86 MB

e379e8aedd4d: Loading layer    62 MB/62 MB

b8d6e692a25e: Loading layer 3.072 kB/3.072 kB

f1db227348d0: Loading layer 4.096 kB/4.096 kB

32ce5f6a5106: Loading layer 3.584 kB/3.584 kB

d874fd2bc83b: Loading layer 7.168 kB/7.168 kB

Loaded image: docker.io/nginx:latest

[root@localhost ~]# docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

docker.io/nginx     latest              605c77e624dd        19 months ago       141 MB

docker.io/centos    latest              5d0da3dc9764        22 months ago       231 MB

Docker 容器操作

容器是Docker 的另一个核心概念,简单说,容器是镜像的一个运行实例,是独立运行

的一个或一组应用以及它们所必需的运行环境,包括文件系统、系统类库、shell 环境等。

镜像是只读模板,而容器会给这个只读模板一个额外的可写层。

下面将具体介绍围绕容器的具体操作。

1、创建容器与运行容器

Docker 的创建就是将镜像加载到容器的过程,Docker 的容器十分轻量级,用户可以随

时创建或者删除。新创建的容器默认处于停止状态,不运行任何程序,需要在其中发起一个

进程来启动容器,这个进程是该容器的唯一进程,所以当该进程结束的时候,容器也会完全

停止。停止的容器可以重新启动并保留原来的修改。可以使用docker create 命令新建一个容器。

命令格式:docker create [选项]… 镜像运行的程序

常用选项:

  • -i 让容器的输入保持打开
  • -t 让Docker 分配一个伪终端
  • -d 守护进程形式运行

 创建容器

[root@localhost ~]# docker create -it centos /bin/bash

98f68500e69567459fa7125cfcddbe309f18a51ba125ac3af6bb657103b89048

查看容器运行状态

使用docker create 命令创建新容器后会返回一个唯一的ID。a代表所有容器

[root@localhost ~]# docker ps -a

CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

98f68500e695        centos              "/bin/bash"         26 seconds ago      Created                                 suspicious_franklin

启动容器
                 

 

[root@localhost ~]# docker start 98f68500e695  

98f68500e695

创建容器并执行一条shell命令

[root@localhost ~]# docker run centos /bin/bash -c ls /

bin

dev

etc

home

lib

lib64

lost+found

media

mnt

opt

proc

root

run

sbin

srv

sys

tmp

usr

var

[root@localhost ~]# docker ps -a

CONTAINER ID        IMAGE               COMMAND               CREATED             STATUS                      PORTS               NAMES

9497f8c130be        centos              "/bin/bash -c ls /"   36 seconds ago      Exited (0) 35 seconds ago                       romantic_williams

98f68500e695        centos              "/bin/bash"           3 minutes ago       Up About a minute                               suspicious_franklin

后台运行容器

[root@localhost ~]# docker run -d nginx /bin/bash -c "while true;do echo hello;done"

71dd7c6aad86aa4d2c69e1e175729c59f706e21c28ff340edfd7a7784d02c327

查看容器状态 -a是所有  -q只看容器id

[root@localhost ~]# docker ps -a

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                   

71dd7c6aad86        nginx               "/docker-entrypoin..."   27 seconds ago      Up 25 seconds            

9497f8c130be        centos              "/bin/bash -c ls /"      3 minutes ago       Exited (0) 3 minutes ago

98f68500e695        centos              "/bin/bash"              5 minutes ago       Up 4 minutes          

查看容器输出 运行

[root@localhost ~]# docker logs 71dd7c6aad86

hello

hello

hello

hello

hello

hello

hello

hello

hello

hello

hello

hello

停止容器

[root@localhost ~]#  docker stop  71dd7c6aad86

71dd7c6aad86

查看

[root@localhost ~]# docker ps -a

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                        PORTS               NAMES

71dd7c6aad86        nginx               "/docker-entrypoin..."   3 minutes ago       Exited (137) 11 seconds ago                       trusting_sammet

9497f8c130be        centos              "/bin/bash -c ls /"      6 minutes ago       Exited (0) 6 minutes ago                          romantic_williams

98f68500e695        centos              "/bin/bash"              8 minutes ago       Up 7 minutes                                      suspicious_franklin

进入容器

需要进入容器进行相应操作时,可以使用docker exec 命令或者docker attach命令进入运行着的容器。

命令格式:docker exec -it 容器ID/名称/bin/bash

其中,-i 选项表示让容器的输入保持打开;

-t 选项表示让Docker 分配一个伪终端。

[root@localhost ~]#  docker exec -it 71dd7c6aad86 /bin/bash

root@71dd7c6aad86:/# exit

exit

保证容器后台运行

[root@localhost ~]# docker attach 容器id

容器的导出与导入

用户可以将任何一个Docker 容器从一台机器迁移到另一台机器。在迁移过程中,首先需要将已经创建好的容器导出为文件,可以使用docker export 命令实现,无论这个容器是处于运行状态还是停止状态均可导出。导出之后可将导出文件传输到其他机器,通过相应的导入命令实现容器的迁移。

命令格式:docker export 容器ID/名称>文件名

导出31328ac9cd33容器到文件centos-exp:

[root@localhost ~]# docker run -it centos /bin/bash
[root@31328ac9cd33 /]# touch crushilnux
[root@31328ac9cd33 /]# exit
exit
[root@localhost ~]# docker export 31328ac9cd33>centos-exp

查看
[root@localhost ~]# ls -l centos-exp
-rw-r--r--. 1 root root 238594048 7月  31 14:26 centos-exp

导出的文件从A 机器拷贝到B 机器,之后使用docker import 命令导入,成为镜像。

命令格式:cat 文件名| docker import – 生成的镜像名称:标签

例如,导入文件centos7.tar成为本地镜像:

[root@localhost ~]# cat centos-exp | docker import - centos:exp

sha256:c85e59d0ca2f97e3dce46185d92708f22839501bf7126e64929c243b5d65fd83

[root@localhost ~]# docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

centos              exp                 c85e59d0ca2f        19 seconds ago      231 MB

docker.io/nginx     latest              605c77e624dd        19 months ago       141 MB

docker.io/centos    latest              5d0da3dc9764        22 months ago       231 MB

 文件复制

将主机文件  拷贝到31328ac9cd33:/tmp  目录下

[root@localhost ~]# docker cp /root/anaconda-ks.cfg  31328ac9cd33:/tmp  

[root@localhost ~]# docker start 31328ac9cd33

31328ac9cd33

[root@localhost ~]# docker attach 31328ac9cd33

[root@31328ac9cd33 /]# ls /tmp

anaconda-ks.cfg  ks-script-4luisyla  ks-script-o23i7rc2  ks-script-x6ei4wuu

查看容器资源使用率

[root@localhost ~]# docker stats

CONTAINER           CPU %               MEM USAGE / LIMIT     MEM %               NET I/O             BLOCK I/O           PIDS

71dd7c6aad86        3.37%               268 KiB / 3.682 GiB   0.01%               2.62 kB / 656 B     0 B / 0 B           1

98f68500e695        0.00%               528 KiB / 3.682 GiB   0.01%               4.68 kB / 656 B     0 B / 0 B           1

查看容器进程状态

[root@localhost ~]#  docker top 71dd7c6aad86

UID                 PID                 PPID                C                   STIME               TTY                 TIME                CMD

root                9539                9525                7                   14:18               ?                   00:02:16            /bin/bash -c while true;do echo hello;done

更新容器配置

在docker服务重启时自动启动容器

[root@localhost ~]# docker update --restart=always 31328ac9cd33

31328ac9cd33

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

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

相关文章

机器学习-New Optimization

机器学习(New Optimization) 前言&#xff1a; 学习资料 videopptblog 下面的PPT里面有一些符号错误&#xff0c;但是我还是按照PPT的内容编写公式&#xff0c;自己直到符号表示什么含义就好了 Notation 符号解释 θ t \theta_t θt​第 t 步时&#xff0c;模型的参数 Δ L …

CSS图片放到<div>里面,自适应宽高全部显示,点击图片跳到新页面预览

有一个需求是图片放到一个固定宽高的<div>里面&#xff0c;不管是横图还是竖图&#xff0c;都要全部显示出来并且保持图片的长宽比例不变形&#xff0c;点击图片可以跳到一个新页面预览&#xff0c;代码如下&#xff1a; <!DOCTYPE html> <html> <head>…

第六次作业 密码学

发送者为Alice 接受者为Bob 首先对原始信息进行hash运算得到信息摘要&#xff0c;然后使用发送者Alice私钥进行签名&#xff08;签名的作用是验证该信息是Alice的&#xff09;&#xff0c;然后将原始信息数字签名Alice证书&#xff08;该Alice的证书是由CA组织进行办发的&…

YOLOV8改进:更换PoolFormer主干网络

1.该文章属于YOLOV5/YOLOV7/YOLOV8改进专栏,包含大量的改进方式,主要以2023年的最新文章和2022年的文章提出改进方式。 2.提供更加详细的改进方法,如将注意力机制添加到网络的不同位置,便于做实验,也可以当做论文的创新点。 2.涨点效果:添加PoolFormer主干,有效涨点。 论…

bigemap在工程项目行业里的应用案例

一、工程单位为什么要选择bigemap : 1.地图影像清晰&#xff0c;更新及时 2.能直接用软件做等高线地形图进行投影转换配合cad来使用 3.直接在线下载卫星图和高程节省测绘时间&#xff0c;以及手机端去做数据的采集&#xff0c;对工作有帮助 二、工程单位使用场景&#xff1a; …

Stable Diffusion AI绘画初学者指南【概述、云端环境搭建】

概述、云端环境搭建 Stable Diffusion 是什么、能干啥&#xff1f; 是一种基于深度学习的图像处理技术&#xff0c;可以生成高质量的图像。它可以在不需要真实图像的情况下&#xff0c;通过文字描述来生成逼真的图像。 可以对图像进行修复、超分辨率转换&#xff0c;将低分辨…

可以写进简历的kafka优化-----吞吐量提升一倍的方法

冲突 在看到项目工程里kafka 生产端配置的batch.size为500&#xff0c;而实际业务数据平均有1K大小的时候&#xff1b;我有点懵了。是的&#xff0c;这里矛盾了&#xff1b;莫非之前的作者认为这个batch.size是发送的条数&#xff0c;而不是kafka生产端内存缓存记录的大小&…

【数据结构】手撕排序NO.2----直接插入排序与希尔排序

目录 一. 导入 二. 直接插入排序 2.1 基本思想 2.2 过程分析 2.3 代码实现 2.4 复杂度/稳定性分析 三. 希尔排序(缩小增量排序) 3.1 基本思想 3.2 过程分析 3.3 代码实现 3.4 复杂度/稳定性分析 一. 导入 本期是排序篇的第二期&#xff0c;我们的主角是插入排序。在座的各…

提高电脑寿命的维护技巧与方法分享

在维护电脑运行方面&#xff0c;我有一些自己觉得非常有用的技巧和方法。下面我将分享一些我常用的维护技巧&#xff0c;并解释为什么我会选择这样做以及这样做的好处。 首先&#xff0c;我经常清理我的电脑内部的灰尘。电脑内部的灰尘会影响散热效果&#xff0c;导致电脑发热…

Nodejs 第五章(Npm run 原理)

npm run xxx 发生了什么 按照下面的例子npm run dev 举例过程中发生了什么 读取package json 的scripts 对应的脚本命令(dev:vite),vite是个可执行脚本&#xff0c;他的查找规则是&#xff1a; 先从当前项目的node_modules/.bin去查找可执行命令vite如果没找到就去全局的node…

C++模板初阶学习

目录 1.函数模板1.1函数模板概念1.2函数模板格式1.3函数模板的原理1.4函数模板实例化隐式实例化显示实例化 1.5模板参数适配原则 2.类模板2.1类模板的定义格式2.2类模板实例化 总结 1.函数模板 如何实现一个通用的交换函数呢&#xff1f; #include<iostream> using nam…

软件外包开发的JAVA开发框架

Java的开发框架有很多&#xff0c;以下是一些常见的Java开发框架及其特点&#xff0c;每个框架都有其特定的使用场景和优势&#xff0c;开发者可以根据项目的需求选择合适的框架。今天和大家介绍常见的框架及特点&#xff0c;希望对大家有所帮助。北京木奇移动技术有限公司&…

Day50 算法记录| 动态规划 17(子序列)

这里写目录标题 647. 回文子串516.最长回文子序列总结 647. 回文子串 1.动态规划和2.中心扩展 这个视频是基于上面的视频的代码 方法1:动态规划 布尔类型的dp[i][j]&#xff1a;表示区间范围[i,j] &#xff08;注意是左闭右闭&#xff09;的子串是否是回文子串&#xff0c;如…

面向切面编程(SpringAOP)、通过注解实现AOP代码、AOP的工作流程

&#x1f40c;个人主页&#xff1a; &#x1f40c; 叶落闲庭 &#x1f4a8;我的专栏&#xff1a;&#x1f4a8; c语言 数据结构 javaweb 石可破也&#xff0c;而不可夺坚&#xff1b;丹可磨也&#xff0c;而不可夺赤。 SpringAOP 一、AOP简介1.1连接点&#xff08;JoinPoint&am…

IntelliJ IDEA 2023.1.3 主菜单不见了

通过以下操作&#xff0c;去掉了勾&#xff0c;把主菜单玩没了 然后主菜单找半天都不知道怎么回来&#xff0c;下面记录找回来的过程 双击shift&#xff0c;在弹出的菜单里面搜索 "main menu"&#xff0c;在下图高亮位置选项改为 on

火警智能感知定位 智慧消防大数据可视化监测系统

伴随着城市建设的快速发展&#xff0c;城市消防安全风险的不断上升&#xff0c;城市高层、超高层建筑和大型建筑日益增多&#xff0c;建筑消防安全问题越来越突出。 建设背景 市场背景 近年来&#xff0c;我国多数省级以上城市、90%左右地级以上城市均提出了智慧消防建设计划…

无涯教程-jQuery - width( )方法函数

width()方法获取第一个匹配元素的当前计算像素宽度。 width( ) - 语法 selector.width( ) 此方法能够找到窗口和文档的宽度&#xff0c;如下所示: $(window).width(); //返回浏览器窗口的宽度 $(document).width(); //返回 HTML 文档的宽度 width( ) - 示例 <html&g…

如何用C#实现上位机与下位机之间的Wi-Fi通信?

有IP协议支持的话用UDP报文或者TCP直接发IP地址和端口不行么&#xff1f;你说的WiFi难道是2.4GHz频率模块那种东东&#xff1f; 你既然用了wifi&#xff0c;那么只要上位机和下位机的对应wifi网卡都具有ip地址以及其协议支持&#xff0c;那么和网络编程没啥子明显区别的吧………

pycharm制作柱状图

Bar - Bar_rotate_xaxis_label 解决标签名字过长的问题 from pyecharts import options as opts from pyecharts.charts import Barc (Bar().add_xaxis(["高等数学1&#xff0c;2","C语言程序设计","python程序设计","大数据导论",…

MBA拓展有感-见好就收,还是挑战到底?MBA拓展有感-见好就收,还是挑战到底?

今天看到新闻提到某位坚持了14年高考的同学滑档&#xff0c;让人心生感叹&#xff1a;无论在日常工作还是生活中&#xff0c;选择都是非常重要的。不由想起前段时间我参加研究生新生拓展时的一些感悟&#xff0c;和大家分享一下。 事情的起因是拓展活动中的一个分队竞技类的活…