docker基础用法-2

文章目录

    • 什么是docker
    • OCI&OCF
      • OCI
      • OCF
    • docker架构
    • docker镜像与镜像仓库
    • docker对象
    • 安装及使用docker
      • docker安装
      • docker加速
      • docker常用操作
      • docker event state
      • 防火墙状态及规则

什么是docker

docker中的容器:

  • lxc --> libcontainer --> runC

docker最开始是使用LXC做存储引擎,然后淘汰了LXC自己研发了libcontainer做存储引擎,再后来就用到了runC。

管理容器的工具。


在这里插入图片描述

OCI&OCF

OCI

开放容器的规范

  • 由Linux基金会主导于2015年6月创立
  • 旨在围绕容器格式和运行时制定一个开放的工业化标准
  • 包含两个规范
    • 运行时规范(runtime-spec)
    • 镜象规范(image-spec)

OCF

开放容器格式

runC是一个CLI工具,用于根据OCI规范生成和运行容器

  • 容器作为runC的子进程启动,可以嵌入到其他各种系统中,而不需要运行守护进程
  • runC构建在libcontainer之上,同样的容器技术支撑着数以百万计的Docker引擎安装

docker提供了一个专门容纳容器镜像的站点:https://hub.docker.com

私有仓库Harbor

Docker容器应用的开发和运行离不开可靠的镜像的管理,虽然Docker官方也提供了公共的镜像仓库【https://hub.docker.com】,但从安全和效率等方面考虑,部署公司私有环境内的 Registry 是非常必要的。之前介绍了Docker私有仓库Registry,在Kubernetes集群中,推荐使用Harbor仓库环境。

docker架构


在这里插入图片描述

docker架构:简单理解就是在client(客户端)运行命令,
Client(客户端)跟Docker_hos(docker主机)在一台主机上面。客户端就是docker的一些命令,就是装了docker之后就有命令,通常情况下客户端跟docker主机是同一主机上的。当然也可以在另一台主机上弄客户端,但是平时不会这样做。
运行容器需要镜像Client
docker bulid  # 构建
docker pull   # 拉镜像
docker run    # 运行容器DOCKER_HOST
docker daemon docker的守护进程。就是装完docker之后要启动的一个服务。在client执行命令之后要交给某一个服务处理,会找这个服务(docker daemon)向它提交请求,运行容器,docker daemon 就会处理请求。docker守护进程就会查看要启动什么容器,在本地是否有所需的镜像,如果有直接启动,如果没有就会去镜像仓库里面拉下来在启动。举例:比如你要启动apache服务
首先在客户端执行启动apache服务命令,然后docker守护进程会处理,查看本地是否有apache的镜像,如果有直接启动,如果没有会去镜像仓库拉下来再启动。  
docker容器要设置为开机自启

docker镜像与镜像仓库

为什么镜像仓库名字是 Registry 而不是 repository ?在docker中仓库的名字是以应用的名称取名的。


在这里插入图片描述

镜像是静态的,而容器是动态的,容器有其生命周期,镜像与容器的关系类似于程序与进程的关系。镜像类似于文件系统中的程序文件,而容器则类似于将一个程序运行起来的状态,也即进程。所以容器是可以删除的,容器被删除后其镜像是不会被删除的。

docker对象

当你使用docker时,你是在创建和使用镜像、容器、网络、卷、插件和其他对象。

  • 镜像
    • 镜像是一个只读模板,用来创建 docker 容器的。
    • 通常情况下,一个镜像基于另一个镜像,并添加一些额外的定制。
    • 您可以创建自己的镜像,也可以使用其他人创建好的镜像并在注册表(Registry)中发布你自己的镜像。
  • 容器
    • 容器是镜像的可运行实例。
    • 您可以使用docker API(API是开发人员用程序来操作)或CLI(使用命令来控制)来创建、运行、停止、移动或删除容器。
    • 您可以将一个容器连接到一个或多个网络,将存储附加到它里面去,甚至根据它的当前状态创建一个新的镜像。

安装及使用docker

docker安装

阿里云镜像官网 https://developer.aliyun.com/


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述

cd /etc/yum.repos.d/
# 下载docker镜像
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 下载docker
yum -y install docker-ce

docker加速

docker-ce 的配置文件是/etc/docker/daemon.json,此文件默认不存在,需要我们手动创建并进行配置,而docker的加速就是通过配置此文件来实现的。

docker的加速有多种方式:

  • docker cn
  • 中国科技大学加速器
  • 阿里云加速器(需要通过阿里云开发者平台注册帐号,免费使用个人私有的加速器)<— 在这里使用阿里云的加速器

登录阿里云网址


点击控制台
在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


mkdir -p /etc/docker
systemctl start docker # 启动dockercat > /etc/docker/daemon.json <<EOF
{"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/"]
}
EOF
systemctl daemon-reload # 重新加载程序
systemctl restart docker # 重启dockerdocker version # 查看版本
docker info # 查看信息
# 查看信息,以下内容翻译成中文,原文是英文 
[root@localhost ~]# docker info
Client: Docker Engine - CommunityVersion:    25.0.4    # docker版本Context:    defaultDebug Mode: falsePlugins:buildx: Docker Buildx (Docker Inc.)Version:  v0.13.0Path:     /usr/libexec/docker/cli-plugins/docker-buildxcompose: Docker Compose (Docker Inc.)Version:  v2.24.7Path:     /usr/libexec/docker/cli-plugins/docker-composeServer:Containers: 5  # 有多少个容器5个Running: 1    # 正在运行的容器有1个Paused: 0Stopped: 4    # 停止的容器有4个Images: 5      # 有5个镜像
......省略N
Kernel Version: 3.10.0-1160.71.1.el7.x86_64  # Linux内核Operating System: CentOS Linux 7 (Core)  # 操作系统OSType: linuxArchitecture: x86_64  # 架构CPUs: 2     # CPU 核数Total Memory: 1.777GiBName: k8s-node02     # 主机名ID: 4da00c4c-a26e-44ad-919d-f4b9404a269eDocker Root Dir: /var/lib/docker  # docker 存放数据位置Debug Mode: falseExperimental: falseInsecure Registries:127.0.0.0/8Registry Mirrors:https://1izcbhll.mirror.aliyuncs.com/Live Restore Enabled: false

docker常用操作

命令功能
docker search在Docker Hub上搜索镜像
docker pull从Docker Hub中提取镜像
docker images查看镜像
docker create创建一个新容器
docker start启动容器
docker run在新容器中运行命令
docker attach连接到运行的容器
docker ps列出正在运行的容器 (加上-a就是列出运行和没有运行的)
docker logs获取容器日志
docker restart重启容器
docker stop停止一个或多个运行中的容器
docker kill杀死一个或多个运行中的容器
docker rm移除一个或多个容器
docker exec在运行的容器中运行命令
docker info查看信息
docker inspect返回Docker对象的低级信息
docker push推 镜像到镜像仓库中
build从Dockerfile构建镜像
# 查看docker 命令用法
[root@localhost ~]# docker --help
......省略N
Commands:attach      Attach local standard input, output, and error streams to a running containerbuild       Build an image from a Dockerfile  # 从Dockerfile构建镜像commit      Create a new image from a container's changescp          Copy files/folders between a container and the local filesystem # 在容器和本地文件系统之间复制文件/文件夹create      Create a new container # 创建一个新容器diff        Inspect changes to files or directories on a container's filesystemevents      Get real time events from the serverexec        Run a command in a running containerexport      Export a container's filesystem as a tar archivehistory     Show the history of an imageimages      List imagesimport      Import the contents from a tarball to create a filesystem imageinfo        Display system-wide informationinspect     Return low-level information on Docker objectskill        Kill one or more running containersload        Load an image from a tar archive or STDINlogin       Log in to a Docker registrylogout      Log out from a Docker registrylogs        Fetch the logs of a containerpause       Pause all processes within one or more containersport        List port mappings or a specific mapping for the containerps          List containers  # 列出容器pull        Pull an image or a repository from a registrypush        Push an image or a repository to a registry  # 将镜像像或存储库推送到注册表rename      Rename a containerrestart     Restart one or more containers   # 重新启动一个或多个容器rm          Remove one or more containers    # 移除一个或多个容器
......省略N
# 使用search命令跟在docker仓库直接搜索httpd是一样的
[root@localhost ~]# docker search httpd
NAME     DESCRIPTION            STARS     OFFICIAL   AUTOMATED
httpd    The Apache HTTP Server Project    4090       [OK]
......省略N# 拉取镜像,不指定版本就是拉取最新版latest
[root@localhost ~]# docker pull httpd
Using default tag: latest
latest: Pulling from library/httpd
a2abf6c4d29d: Pull complete
dcc4698797c8: Pull complete
41c22baa66ec: Pull complete
67283bbdd4a0: Pull complete
d982c879c57e: Pull complete
# 有五层,层次越少越好。# 查看本地有哪些镜像
[root@localhost ~]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED        SIZE
httpd        latest    dabbfbe0c57b   7 months ago   144MB
[root@localhost ~]## 使用httpd镜像创建一个新的容器
注意:这样创建的容器是停止状态
[root@localhost ~]# docker create --name web httpd
61dc31d6aab05055dc5c0fab0cfd2ab8dba3768e89960e2a82d2b48313a83b61# docker ps 是查看容器状态,加上-a 是查看正在运行的和没有在运行的容器
[root@localhost ~]# docker ps -a
CONTAINER ID   IMAGE     COMMAND          CREATED       STATUS    PORTS NAMES
61dc31d6aab0   httpd  "httpd-foreground" 6 seconds ago  Created          web# 启动web容器、如果在创建时没有指定名字,则用容器id来启动:61dc31d6aab0
[root@localhost ~]# docker start web  # docker start 61dc31d6aab0
web
[root@localhost ~]# docker ps
CONTAINER ID   IMAGE     COMMAND              CREATED         STATUS      PORTS     NAMES
61dc31d6aab0   httpd     "httpd-foreground"   7 minutes ago   Up About a minute   80/tcp    web# 停止web
[root@localhost ~]# docker stop web
web
[root@localhost ~]# docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
[root@localhost ~]## 重启web
[root@localhost ~]# docker restart web
web
[root@localhost ~]# docker ps
CONTAINER ID   IMAGE     COMMAND              CREATED         STATUSPORTS     NAMES
61dc31d6aab0   httpd     "httpd-foreground"   8 minutes ago   Up 1 second80/tcp    web
[root@localhost ~]## 杀死web,跟杀死进程一样
[root@localhost ~]# docker kill web
web
[root@localhost ~]# docker ps -a
CONTAINER ID   IMAGE     COMMAND              CREATED          STATUS                PORTS     NAMES
61dc31d6aab0   httpd     "httpd-foreground"   29 minutes ago   Exited (137)3 seconds ago             web
[root@localhost ~]## 删除一个正在运行的容器
[root@localhost ~]# docker start web
[root@localhost ~]# docker rm -f web
web
[root@localhost ~]# docker ps -a
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
[root@localhost ~]## 注意删除容器镜像还在的
[root@localhost ~]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED        SIZE
httpd        latest    dabbfbe0c57b   7 months ago   144MB
[root@localhost ~]## docker run就是执行docker pull、docker create和docker start,如果本地没有所需的镜像,会从镜像仓库里拉取下来,启动成容器。如果本地有容器直接docker start就OK了# it交互模式。在新容器中运行命令/bin/sh
[root@localhost ~]# docker run -it --name test busybox /bin/sh
Unable to find image 'busybox:latest' locally
latest: Pulling from library/busybox
5cc84ad355aa: Pull complete
Digest: sha256:5acba83a746c7608ed544dc1533b87c737a0b0fb730301639a0179f9344b1678
Status: Downloaded newer image for busybox:latest
/ # ip addr show  eth0 # 查看容器里的ip
12: eth0@if13: <BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN> mtu 1500 qdisc noqueuelink/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ffinet 172.17.0.2/16 brd 172.17.255.255 scope global eth0valid_lft forever preferred_lft forever
/ #
# 如果使用exit退出容器,这个容器就会停止。
/ # exit
[root@localhost ~]# docker ps -a
CONTAINER ID   IMAGE     COMMAND     CREATED         STATUS    PORTS     NAMES
4beeb9550425   busybox   "/bin/sh"   5 minutes ago   Exited (0) 9 seconds ago             test
[root@localhost ~]## 使用attach命令进入容器,有一个缺点就是用exit退出容器后就会停止容器
[root@localhost ~]# docker start test
[root@localhost ~]# docker attach test
/ #
# 使用exit命令退出就会停止容器
/ # exit
[root@localhost ~]# docker ps -a
CONTAINER ID   IMAGE     COMMAND     CREATED          STATUS     PORTS     NAMES
4beeb9550425   busybox   "/bin/sh"   16 minutes ago   Exited (0) 3 seconds ago             test
[root@localhost ~]## 推荐使用exec命令进入容器,因为就算使用exit退出容器也不会停止容器
[root@localhost ~]# docker start test
[root@localhost ~]# docker exec -it test /bin/sh
/ # exit
[root@localhost ~]# docker ps -a
CONTAINER ID   IMAGE     COMMAND     CREATED          STATUS              PORTS     NAMES
4beeb9550425   busybox   "/bin/sh"   23 minutes ago   Up About a minute        test
[root@localhost ~]## 返回Docker对象的低级信息
[root@localhost ~]# docker inspect test
.....省略N"Gateway": "172.17.0.1",  # 网关"IPAddress": "172.17.0.2", # ip 地址"IPPrefixLen": 16,"IPv6Gateway": "","GlobalIPv6Address": "","GlobalIPv6PrefixLen": 0,"MacAddress": "02:42:ac:11:00:02","DriverOpts": null
...... 省略N# 加上-q 是取出所有正在运行的容器ID
[root@localhost ~]# docker ps -q
b10ced22fc07
daa8fc40249e
371980f52bb1
db450ac87a4a
029edca838fb
a1726d4849a6
e063df0b9040
24f5a6b7ed86

docker event state


在这里插入图片描述

防火墙状态及规则

1、查看防火墙状态:firewall-cmd --state

[root@localhost ~]# firewall-cmd --state 
running
[root@localhost ~]# 

2、查看防火墙:firewall-cmd --list-all

[root@localhost ~]# firewall-cmd --list-all

3、防火墙放行协议

[root@localhost ~]# firewall-cmd --add-rich-rule 'rule family=ipv4 source address=0.0.0.0/0 service name=http accept' --permanent
注意:在centos8/redhat8版本里不设置防火墙放行是访问不的--permanent   //  表示永久添加  如果要删除的话,把add改为remove,其他不变
[root@localhost ~]# firewall-cmd --remove-rich-rule 'rule family=ipv4 source address=0.0.0.0/0 service name=http accept' --permanent

4、防火墙有好几种

iptables
firewalld
ebtables
主流是iptables跟firewalld
iptables  # 默认放行
firewalld # 默认拒绝# 查看防火墙规则命令用法
[root@localhost ~]# firewall-cmd --helpUsage: firewall-cmd [OPTIONS...]General Options-h, --help           Prints a short help text and exists-V, --version        Print the version string of firewalld-q, --quiet          Do not print status messages
........省略

5、防火墙放行规则


在这里插入图片描述


使用httpd镜像创建成容器,使用母机的浏览器访问

# 查看有哪些容器正在运行
[root@localhost ~]# docker ps -a
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
[root@localhost ~]#
#选项解释: 
run: 运行容器 
-d: 后台运行容器 
--name: 指定容器的名字 
-p: 指定宿主机和容器的端口映射,宿主机端口:容器端口 
-v: 指定挂载映射,宿主机路径:容器路径
-it:交互模式
案例
docker run -d --name web -p 8080:8080 -v ~/container_journal:/var/log/journal:Z 镜像
后面的Z是docker将Selinux的container_file_t的标签值应用到宿主机的目录上,以便容器可以访问宿主机的目录。# 创建跟容器映射目录data
[root@localhost ~]# mkdir -p /opt/data#创建容器名叫web、-p是把容器的80端口映射到真机上,-v是将宿主机目录跟容器的目录关联,用httpd镜像创容器
[root@localhost ~]# docker run -d --name web -p 80:80 -v /opt/data/:/usr/local/apache2/htdocs:Z httpd
7ef195d60c63c4196e82ee793f2b347ab38332d90380687264875e06716095d0
[root@localhost ~]# docker ps
CONTAINER ID   IMAGE     COMMAND              CREATED         STATUS         PORTS                               NAMES
7ef195d60c63   httpd     "httpd-foreground"   3 seconds ago   Up 2 seconds   0.0.0.0:80->80/tcp, :::80->80/tcp   web
[root@localhost ~]## 去百度搜索源码之家,把网站下载到/opt/data目录下面来
# 把网站放到/opt/data下面
[root@localhost data]# ls
qadmin-1.3.zip# 解压
dnf -y install unzip # 下载解压命令
[root@localhost data]# unzip qadmin-1.3.zip
[root@localhost data]# ls
qadmin  qadmin-1.3.zip[root@localhost data]# ls
article_add.html    db_backup.html     index.html      pages_component.html  static           user_index.html
article_index.html  db_reduction.html  login.html      pages_model.html      type_add.html    web_cache.html
base.html           flink_add.html     nav_add.html    pages_msg.html        type_index.html  web_index.html
data                flink_index.html   nav_index.html  README.md             user_add.html    web_pwd.html# 防火墙放行协议
[root@localhost ~]# firewall-cmd --add-rich-rule 'rule family=ipv4 source address=0.0.0.0/0 service name=http accept' --permanent#重新加载
[root@localhost ~]# firewall-cmd --reload#查看状态
[root@localhost ~]# firewall-cmd --list-all
........省略rule family="ipv4" source address="0.0.0.0/0" service name="http" accept #看到这个就可以在真机里访问#注意:在centos8/redhat8版本里不设置防火墙放行是访问不的[root@localhost ~]# ip addr show ens160
2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000link/ether 00:0c:29:1c:4f:61 brd ff:ff:ff:ff:ff:ffinet 192.168.229.146/24 brd 192.168.229.255 scope global dynamic noprefixroute ens160valid_lft 1037sec preferred_lft 1037secinet6 fe80::20c:29ff:fe1c:4f61/64 scope link noprefixroutevalid_lft forever preferred_lft forever
[root@localhost ~]#

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

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

相关文章

Qt for Mac阻止MacOS系统休眠

Qt开发的应用程序如果电脑休眠了会影响软件的使用&#xff0c;因此在软件的使用过程中需要防止电脑休眠&#xff0c;在Win上有专门的API进行处理&#xff0c;在Mac上也必需使用Mac平台自身的API&#xff0c;本篇介绍在Mac平台下使用Qt阻止Mac系统休眠。 要调用Mac系统的API&am…

如何用Selenium通过Xpath,精准定位到“多个相同属性值以及多个相同元素”中的目标属性值

前言 本文是该专栏的第21篇,后面会持续分享python爬虫干货知识,记得关注。 相信很多同学,都有使用selenium来写爬虫项目或者自动化页面操作项目。同样,也相信很多同学在使用selenium来定位目标元素的时候,或多或少遇见到这样的情况,就是用Xpath定位目标元素的时候,页面…

html5cssjs代码 023 公制计量单位进位与换算表

html5&css&js代码 023 公制计量单位进位与换算表 一、代码二、解释 这段HTML代码定义了一个网页&#xff0c;用于展示公制计量单位的进位与换算表。 一、代码 <!DOCTYPE html> <html lang"zh-cn"> <head><meta charset"utf-8&quo…

新!PCA+DBO+K-means聚类,蜣螂优化算法DBO优化K-means,适合学习,也适合发paper。

PCADBOK-means聚类&#xff0c;蜣螂优化算法DBO优化K-means&#xff0c;适合学习&#xff0c;也适合发paper。 一、 蜣螂优化算法 摘要&#xff1a;受蜣螂滚球、跳舞、觅食、偷窃和繁殖等行为的启发&#xff0c;提出了一种新的基于种群的优化算法(Dung Beetle Optimizer, DBO…

【开源】SpringBoot框架开发就医保险管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 科室档案模块2.2 医生档案模块2.3 预约挂号模块2.4 我的挂号模块 三、系统展示四、核心代码4.1 用户查询全部医生4.2 新增医生4.3 查询科室4.4 新增号源4.5 预约号源 五、免责说明 一、摘要 1.1 项目介绍 基于JAVAVue…

数学建模博弈理论与实践国防科大版

目录 4.博弈模型 4.1.Nash平衡点和帕雷托最优 4.2.囚徒困境 4.3.智猪博弈 4.4.脏脸之谜 5.军事问题数学建模 5.1.兰彻斯特作战模型 5.1.1.一般战斗模型 5.1.2游击战模型 5.1.3.混合战模型 5.2.硫磺岛战役 4.博弈模型 本讲介绍博弈模型&#xff0c;包括博弈论&#x…

u盘文件损坏怎么恢复数据?分享三个数据恢复方法

随着科技的飞速发展&#xff0c;U盘已成为我们日常生活和工作中不可或缺的数据存储工具。然而&#xff0c;由于各种原因&#xff0c;如不当操作、病毒感染或硬件故障等&#xff0c;U盘中的文件可能会受到损坏。那么&#xff0c;当U盘文件损坏时&#xff0c;我们该如何恢复数据呢…

【回归预测】基于DBO-BP(蜣螂优化算法优化BP神经网络)的回归预测 多输入单输出【Matlab代码#68】

文章目录 【可更换其他算法&#xff0c;获取资源请见文章第6节&#xff1a;资源获取】1. BP神经网络2. 蜣螂优化算法3. DBO-BP神经网络模型的构建4. 部分代码展示5. 仿真结果展示6. 资源获取 【可更换其他算法&#xff0c;获取资源请见文章第6节&#xff1a;资源获取】 1. BP神…

FFmpeg分析视频信息输出到指定格式(csv/flat/ini/json/xml)文件中

1.查看ffprobe帮助 输出格式参数说明: 本例将演示输出csv,flat,ini,json,xml格式 输出所使用的参数如下: 1.输出csv格式: ffprobe -i 4K.mp4 -select_streams v -show_frames -of csv -o 4K.csv 输出: 2.输出flat格式: ffprobe -i 4K.mp4 -select_streams v -show_frames …

玩转C语言——数组初探

一、前言 通过前面的学习&#xff0c;我们已了解C语言的结构变量、分支结构和循环结构。今天&#xff0c;我们一起来认识C语言的另一知识点——数组。先赞后看&#xff0c;养成习惯。 二、数组概念 学习数组&#xff0c;我们要明白数组是什么。在我看来&#xff1a;数组是⼀组…

云服务器2核4G5M配置代表什么意思?

腾讯云服务器2核4G5M带宽配置是代表什么&#xff1f;代表2核CPU、4G内存、5M公网带宽&#xff0c;这是一款轻量应用服务器&#xff0c;系统盘为60GB SSD云硬盘&#xff0c;活动页面 txybk.com/go/txy 活动打开如下图&#xff1a; 腾讯云2核4G5M服务器 如上图所示&#xff0c;这…

练习8 Web [GYCTF2020]Blacklist

这道题其实不是堆叠注入&#xff0c;但是我在联合查询无效后&#xff0c;试了一下堆叠&#xff0c;最后一步发现被过滤的sql语句太多了&#xff0c;完全没法 查阅其他wp的过程[GYCTF2020]Blacklist 1&#xff08;详细做题过程&#xff09; 是用的handler语句&#xff0c;只能用…

cmd常用指令

cmd全称Command Prompt&#xff0c;中文译为命令提示符。 命令提示符是在操作系统中&#xff0c;提示进行命令输入的一种工作提示符。 在不同的操作系统环境下&#xff0c;命令提示符各不相同。 在windows环境下&#xff0c;命令行程序为cmd.exe&#xff0c;是一个32位的命令…

【系统性】 循序渐进学C++

循序渐进学C 第一阶段&#xff1a;基础 一、环境配置 1.1.第一个程序&#xff08;基本格式&#xff09; ​ #include <iosteam> using namespace std;int main(){cout<<"hello world"<<endl;system("pause"); }​ 模板 #include &…

email + celery+django 异步发送邮件功能的实现

主要流程&#xff1a; django通过发件服务器到收件服务器&#xff0c;最后到收件人 邮件配置设置需要打开SMTP/IMAP并获的授权码&#xff0c;完成授权功能实现发送给收件人 邮件配置请参考另一博客https://blog.csdn.net/qq_44238024/article/details/136277821 项目结构树…

蓝桥杯刷题(十)

1.翻转 代码 输入数据&#xff0c;每组数据进行比较&#xff0c;j的范围掐头去尾&#xff0c;若a[j]b[j]&#xff0c;继续&#xff0c;若出现010,101子串则改成000,111&#xff0c;遍历完后比较a是否等于b&#xff0c;相同则输出次数&#xff0c;不同则输出-1。 for _ in ran…

JavaWeb:vue、AJax、ELement、maven、SpringBoot、、Http、Tomcat、请求响应、分层解耦

1 Vue 1.1 Vue介绍 VUE是前端框架&#xff0c;基于MVVM&#xff0c;实现数据双向绑定 框架是半基础软件&#xff0c;可重用的代码模型 1.2 Vue指令 <script src"js/vue.js"></script></head> <body><div id"id"><!--…

Kubectl常用命令

管理资源&#xff08;查看、创建、更新、删除&#xff09; 查看node资源 kubectl get nodes查看命名空间 kubectl get ns查看service资源 -n 指明所属的命名空间&#xff0c;不写默认看命名空间为default下的所有service kubectl get svc -n default查看pod资源 -n 指明所…

【计算机网络】基本概念

基本概念 IP 地址端口号协议协议分层封装分用客户端服务器请求和响应两台主机之间的网络通信流程 IP 地址 概念&#xff1a;IP 地址主要是用于唯一标识网络主机、其他网络设备&#xff08;如路由器&#xff09;的网络地址。简单来说&#xff0c;IP地址用来唯一定位主机。格式&…

网络安全之DDos攻击原理与防御

DDos简介 对于DDos(分布式拒绝服务)攻击&#xff0c;人们往往谈虎色变。它被认为是安全领域中最难解决的问题之一&#xff0c;迄今为止也没有完美的解决方案。DDos攻击是一种网络攻击方式&#xff0c;其目的是通过利用大量的互联网连接设备同时向目标网站或服务发送大量请求&a…