05-docker高级网络配置和数据卷配置
1. docker高级网络配置
1.1 说明
当 Docker 启动时,会自动在主机上创建一个 docker0
虚拟网桥,实际上是 Linux 的一个 bridge,可以理解为一个软件交换机。它会在挂载到它的网口之间进行转发。
同时,Docker 随机分配一个本地未占用的私有网段(在 RFC1918 中定义)中的一个地址给 docker0
接口。比如典型的 172.17.42.1
,掩码为 255.255.0.0
。此后启动的容器内的网口也会自动分配一个同一网段(172.17.0.0/16
)的地址。
当创建一个 Docker 容器的时候,同时会创建了一对 veth pair
接口(当数据包发送到一个接口时,另外一个接口也可以收到相同的数据包)。这对接口一端在容器内,即 eth0
;另一端在本地并被挂载到 docker0
网桥,名称以 veth
开头(例如 vethAQI2QT
)。通过这种方式,主机可以跟容器通信,容器之间也可以相互通信。Docker 就创建了在主机和所有容器之间一个虚拟共享网络。
1.2 查看网络信息
# docker network ls
1.3 创建一个网桥
# docker network create -d bridge 网桥名称
1.4 删除一个网桥
# docker network rm 网桥名称
1.5 容器之前使用网络通信
# 1.查询当前网络配置
- docker network ls
NETWORK ID NAME DRIVER SCOPE
8e424e5936b7 bridge bridge local
17d974db02da docker_gwbridge bridge local
d6c326e433f7 host host local
# 2.创建桥接网络
- docker network create -d bridge info
[root@centos ~]# docker network create -d bridge info
6e4aaebff79b1df43a064e0e8fdab08f52d64ce34db78dd5184ce7aaaf550a2f
[root@centos ~]# docker network ls
NETWORK ID NAME DRIVER SCOPE
8e424e5936b7 bridge bridge local
17d974db02da docker_gwbridge bridge local
d6c326e433f7 host host local
6e4aaebff79b info bridge local
# 3.启动容器指定使用网桥
- docker run -d -p 8890:80 --name nginx001 --network info nginx
- docker run -d -p 8891:80 --name nginx002 --network info nginx `注意:一旦指定网桥后--name指定名字就是主机名,多个容器指定在同一个网桥时,可以在任意一个容器中使用主机名与容器进行互通`
[root@centos ~]# docker run -d -p 8890:80 --name nginx001 --network info nginx
c315bcc94e9ddaa36eb6c6f16ca51592b1ac8bf1ecfe9d8f01d892f3f10825fe
[root@centos ~]# docker run -d -p 8891:80 --name nginx002 --network info nginx
f8682db35dd7fb4395f90edb38df7cad71bbfaba71b6a4c6e2a3a525cb73c2a5
[root@centos ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f8682db35dd7 nginx "/docker-entrypoint.…" 3 seconds ago Up 2 seconds 0.0.0.0:8891->80/tcp nginx002
c315bcc94e9d nginx "/docker-entrypoint.…" 7 minutes ago Up 7 minutes 0.0.0.0:8890->80/tcp nginx001
b63169d43792 mysql:5.7.19 "docker-entrypoint.s…" 7 minutes ago Up 7 minutes 3306/tcp mysql_mysql.1.s75qe5kkpwwttyf0wrjvd2cda
[root@centos ~]# docker exec -it f8682db35dd7 /bin/bash
root@f8682db35dd7:/# curl http://nginx001
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
.....
2. 高级数据卷配置
2.1 说明
数据卷
是一个可供一个或多个容器使用的特殊目录,它绕过 UFS,可以提供很多有用的特性:
数据卷
可以在容器之间共享和重用- 对
数据卷
的修改会立马生效 - 对
数据卷
的更新,不会影响镜像 数据卷
默认会一直存在,即使容器被删除
注意:
数据卷
的使用,类似于 Linux 下对目录或文件进行 mount,镜像中的被指定为挂载点的目录中的文件会复制到数据卷中(仅数据卷为空时会复制)。
2.2 创建数据卷
[root@centos ~]# docker volume create my-vol
my-vol
2.3 查看数据卷
[root@centos ~]# docker volume inspect my-vol
[{"CreatedAt": "2020-11-25T11:43:56+08:00","Driver": "local","Labels": {},"Mountpoint": "/var/lib/docker/volumes/my-vol/_data","Name": "my-vol","Options": {},"Scope": "local"}
]
2.4 挂载数据卷
[root@centos ~]# docker run -d -P --name web -v my-vol:/usr/share/nginx/html nginx
[root@centos ~]# docker inspect web"Mounts": [{"Type": "volume","Name": "my-vol","Source": "/var/lib/docker/volumes/my-vol/_data","Destination": "/usr/share/nginx/html","Driver": "local","Mode": "z","RW": true,"Propagation": ""}],
2.5 删除数据卷
docker volume rm my-vol
05-docker高级网络配置和数据卷配置相关推荐
- Docker容器-------网络模式,数据卷和数据卷容器
目录 Docker网络实现原理 Docker的网络模式 Host模式 Container模式 none模式 bridge模式 自定义网络 查看网络模式列表 查看容器信息(包含配置.环境.网关.挂载.c ...
- Docker之网络模式和数据卷
目录 引言 一.Docker的网络模式 1.Docker的四种网络模式 2.Docker的自定义网络
- docker高级网络配置、高级数据卷机制和Dockerfile说明
11.高级网络配置 11.1 说明 当 Docker 启动时,会自动在主机上创建一个 docker0 虚拟网桥,实际上是 Linux 的一个 bridge,可以理解为一个软件交换机.它会在挂载到它的网 ...
- 【docker教程】docker视频教程(ubuntu)数据卷挂载、数据卷容器volume、端口映射(镜像叠加,分层复用)rootfs、bootfs(没看完)
黑马程序员Docker容器化技术,从零学会Docker教程 可以先看1-13课.以及 docker概述 文章目录 docker概述 ubuntu安装docker docker架构 配置docker镜像 ...
- Docker容器学习梳理 - Volume数据卷使用
Docker volume使用 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 Docker中的数据可以存储在类似于虚拟机 ...
- docker部署mysql并挂载数据卷
docker部署mysql并挂载数据卷 备份mysql源文件 windows下备份数据库 # 方法一:进入到mysql安装路径下的bin文件,执行备份命令 # pg_dump -h localhost ...
- Docker基本操作五 (挂载数据卷)
挂载数据卷 我们在创建容器时,可以通过 -v 参数来挂载一个数据卷到某个容器目录 docker run \--name mn \-v html:/root/html \-p 8080:80nginx ...
- 从零开始的Docker [ 7 ] --- 顶级 Volumes,数据卷, 系统限制sysctls
文章目录 容器技术 Docker 应用 一.顶级 Volumes 1.配置 2.启动 二.数据卷 挂载 1.配置 2.启动 三.系统限制 sysctls 1.配置 2.启动 容器技术 Docker 应 ...
- Docker镜像原理及容器数据卷
什么是docker镜像? docker镜像是一个特殊的文件系统,除了提供容器运行时所需的程序.库.资源.配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷.环境变量.用户等):镜像不包含任 ...
最新文章
- 他为何能够领跑互联网与AI时代?李彦宏讲述成功之道
- C#——语言基础 之 运算符!
- python搭建简单http文件服务器
- 如何在SAP云平台Neo环境里进行workflow(工作流)的开发
- jzoj6800-NOIP2020.9.19模拟spongebob【枚举】
- 《SpringCloud超级入门》Spring Cloud Eureka是什么?《八》
- 最新 955 不加班公司名单
- Flutter实战一Flutter聊天应用(十九)
- shell 整理(40)====破解加密的qq号
- Mybatis参数Integer类型值为0 源码处理
- 三菱plc控制步进电机实例_「PLC案例」三菱FX3U与威纶通HMI的步进定位控制,附程序图~...
- RNA-seq流程学习笔记(1)-Ubuntu系统安装SRA数据下载软件Aspera connect和SRT-Toolkit
- 那种片里的马赛克,终于可以一键去除了。
- 基于stm32蓝牙智能小车设计
- 橙单微服务的权限部分之过滤规则
- 从事计算机视觉必知的「大牛」有哪些?
- sql中向下取整怎么取_Sql Server 里的向上取整、向下取整、四舍五入取整的实例! | 学步园...
- 电脑和电话能通话?简单
- 免密登录远程服务器(适用于命令窗口和VScode)
- 全国大学生数学建模2020A题炉温曲线Matlab代码(前两问)
热门文章
- c++实现哈夫曼huffman压缩文本
- 智能足球裁判,能否突破专业运动的技术瓶颈
- linux驱动由浅入深系列:camera驱动之二(基于高通平台的V4L2结构及代码分析
- 防火墙测试-思博伦Avalanche 3100_双极未来
- 【项目】C语言实现对英文文本按字典顺序排序(1~100万+个单词,多种排序算法选择)
- Node获取微信JSSDK签名测试号案例
- matlab中hold all,matlab中的hold
- 虚拟主机火云服务器区别,太一云大日如来陆压是什么来历在佛门担任什么职务...
- 与苹果斗争,可以不优雅,但要有用
- 惠普服务器f10恢复系统,惠普系统还原,手把手教你惠普笔记本怎么还原系统