Docker之网络配置

目录

1.网络概念

 网络相关的有ip,子网掩码,网关,DNS,端口号

1.1 ip是什么?

ip是唯一定位一台网上计算机

Ip地址的分类:

IPV4: 4字节32位整数,并分成4段8位的二进制数,每8位之间用圆点隔开,每8位整数可以转换为一个0~255的十进制整数 【例如:255(8).255(16).255(24).255(32)】

IPV6: 16字节128位整数,并分成8段十六进制数,每16位之间用圆点隔开,每16位整数可以转换为一个0~65535的十进制数  

【例如:FFFF(16).FFFF(32).FFFF(48).FFFF(64).FFFF(80).FFFF(96).FFFF(112).FFFF(128)】

1.2子网掩码是什么? 

IP地址本身不再记录划分信息,而是通过独立于IP地址的另一串数字来辅组记录,这就是子网掩码。 

这串数字也是32位的二进制数,但表示的时候也是通过十进制数展示。比如:

// 连续的1代表网络位,连续的0代表主机位  

11111111 11111111 11111111 00000000                      

// 转换

255.255.255.0

 转换后的前三组的255就表示一个ip地址中前三组数是网络号,而后一组的0表示一个ip地址中后一组是主机号。比如:

 IP:192.168.33.112

子网掩码:255.255.255.0

192.168.33是网络位,112 是主机位

子网掩码还可以来划分子网?

我们可以简单的理解成在一个局域网中。比如两台笔记本电脑连接同一个wifi,那么他们就在同一个子网中或者说是同一个局域网中,就算路由器连接外网的网线断了,两台电脑之间也能相互通信。 子网的划分需要靠子网掩码来规定。

如何判断是否在同一个子网?

假如我们有一台A笔记本,一台B笔记本,连接的是同一个wifi,通过查询我们得知:

A笔记本:IP:192.168.33.112 | 子网掩码:255.255.255.0

11000000 10101000 00100001 01110000 // IP

11111111 11111111 11111111 00000000 // 子网掩码

// and运算理解位为乘就可以了,两者每一位都相乘得

11000000 10101000 00100001 00000000

// 转成十进制为

192.168.33.0B笔记本:IP:192.168.33.223 | 子网掩码:255.255.255.0

// 同理B运算完后为

192.168.33.0

 A和B笔记本的运算结果相等,说明在同一个子网

1.3 网关是什么?

网关实质上是一个网络通向其他网络的IP地址。

路由器(Windows下叫默认网关,网关就是路由,路由就是网关。

1.4 DNS是什么?

DNS(Domain Name System,域名系统),因特网上作为域名和IP地址互相映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。

1.5端口号是什么?

端口号作用是表示计算机上正在运行的进程(程序)。

2.网桥模式

四种网络

2.1 bridge 网桥模式

bridge模式是docker的默认网络模式,不写--net参数,就是bridge模式

划线部分就是网桥

查看bridge信息 docker inspect bridge

打开容器 

 查看docker0网桥 

ip addr

查看容器网络

ifconfig 

外部访问 设置端口映射

docker run -itd --name 容器名 -p 8081:8080 镜像名:镜像版本 

2.2 host 主机模式

主机模式下容器和宿主机共用ip和端口 

会报8080端口正在被使用

怎么解决?

关闭tomcat->进入s1->运行spring.jar

2.3 none 没有模式

2.4 container 容器模式

3.自定义网络

创建自定义网络

查看网络

创建网卡

docker network create --subnet=172.33.0.1/16 net02 

固定ip地址

跨网桥测试

​编辑


1.网络概念

 网络相关的有ip,子网掩码,网关,DNS,端口号

1.1 ip是什么?

ip是唯一定位一台网上计算机
Ip地址的分类:
IPV4: 4字节32位整数,并分成4段8位的二进制数,每8位之间用圆点隔开,每8位整数可以转换为一个0~255的十进制整数 【例如:255(8).255(16).255(24).255(32)
IPV6: 16字节128位整数,并分成8段十六进制数,每16位之间用圆点隔开,每16位整数可以转换为一个0~65535的十进制数  
【例如:FFFF(16).FFFF(32).FFFF(48).FFFF(64).FFFF(80).FFFF(96).FFFF(112).FFFF(128)

1.2子网掩码是什么? 

IP地址本身不再记录划分信息,而是通过独立于IP地址的另一串数字来辅组记录,这就是子网掩码。 
这串数字也是32位的二进制数,但表示的时候也是通过十进制数展示。比如:
// 连续的1代表网络位,连续的0代表主机位  
11111111 11111111 11111111 00000000                      
// 转换
255.255.255.0
 转换后的前三组的255就表示一个ip地址中前三组数是网络号,而后一组的0表示一个ip地址中后一组是主机号。比如:
 IP:192.168.33.112
子网掩码:255.255.255.0
192.168.33是网络位,112 是主机位

子网掩码还可以来划分子网?
我们可以简单的理解成在一个局域网中。比如两台笔记本电脑连接同一个wifi,那么他们就在同一个子网中或者说是同一个局域网中,就算路由器连接外网的网线断了,两台电脑之间也能相互通信。 子网的划分需要靠子网掩码来规定。
如何判断是否在同一个子网?
假如我们有一台A笔记本,一台B笔记本,连接的是同一个wifi,通过查询我们得知:
A笔记本:
IP:192.168.33.112 | 子网掩码:255.255.255.0
11000000 10101000 00100001 01110000 // IP
11111111 11111111 11111111 00000000 // 子网掩码
// and运算理解位为乘就可以了,两者每一位都相乘得
11000000 10101000 00100001 00000000
// 转成十进制为
192.168.33.0
B笔记本:
IP:192.168.33.223 | 子网掩码:255.255.255.0
// 同理B运算完后为
192.168.33.0
 A和B笔记本的运算结果相等,说明在同一个子网

1.3 网关是什么?

网关实质上是一个网络通向其他网络的IP地址。
路由器(Windows下叫默认网关,网关就是路由,路由就是网关。

1.4 DNS是什么?

DNS(Domain Name System,域名系统),因特网上作为域名和IP地址互相映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。

1.5端口号是什么?

端口号作用是表示计算机上正在运行的进程(程序)。

2.网桥模式

四种网络

2.1 bridge 网桥模式

bridge模式是docker的默认网络模式,不写--net参数,就是bridge模式
划线部分就是网桥

查看bridge信息 docker inspect bridge

打开容器 

docker run -itd (--net 可加可不加)=bridge --name cname iname

 查看docker0网桥 
ip addr
查看容器网络
ifconfig 
外部访问 设置端口映射
docker run -itd --name 容器名 -p 8081:8080 镜像名:镜像版本 

2.2 host 主机模式

docker run -itd --name 容器名 --net=host 镜像:镜像版本

主机模式下容器和宿主机共用ip和端口 

会报8080端口正在被使用

怎么解决?
关闭tomcat->进入s1->运行spring.jar

2.3 none 没有模式

2.4 container 容器模式

3.自定义网络

创建自定义网络

docker network create net01

查看网络

docker network ls 

创建网卡
docker network create --subnet=172.33.0.1/16 net02 

固定ip地址

docker run -itd --name 容器名 --net mynet --ip 172.18.0.2 镜像:镜像版本

跨网桥测试

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

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

相关文章

在香橙派5 Plus上搭建Gitlab

作为一个码农,一定知道Github这个最大的成人交友网站。但是Github在国内不稳定,经常拉不下来代码,也就无法推送代码。为了更方便的使用,顺便更好地了解Git工具,决定在香橙派5 Plus上搭建一个属于自己的代码仓库。 1、…

windows怎么在cmd中通过命令关闭防火墙

windows怎么在cmd中通过命令关闭防火墙 1.打开终端(cmd) 2.关闭防火墙 输入命令: netsh advfirewall set allprofiles state off

redis—List列表

目录 前言 1.常见命令 2.使用场景 前言 列表类型是用来存储多个有序的字符串,如图2-19所示,a、b、C、d、e五个元素从左到右组成 了一个有序的列表,列表中的每个字符串称为元素(element) ,一个列表最多可以存储2^32 - 1 个元素…

FA对接FC流程

2、FA进行对接 (1)首先安装好AD域控服务器DHCPDNS(注意,不要忘记了做DNS正反向解析,就是把已经安装了ITA的主机做解析),在里面创建域用户 (2)安装ITA和VAG/VLB&#xf…

ES应用_ES实战

依靠知识库使用es总结一些使用技巧。 1 快速入门 ES是将查询语句写成类似json的形式,通过关键字进行查询和调用。 1.1 创建 下面创建了一个主分片为5,副本分片为1的ES结构。ES本身是一种noschema的结构,但是可以通过指定mapping编程schema的…

遇见sql语句拼装报错 sql injection violation, syntax error: syntax error, expect RPAREN

在使用PostgreSql瀚高数据库时,相同的语句 select * from public.files_info fi where fi.file_size notnull 在DBever能执行,但是在spring中报错 在spring中JPA版本问题导致,不支持这种写法,会识别为sql注入风险,应…

[python]python利用pyaudio录制系统声音没有立体声混音怎么录制系统音频

当电脑没有立体声混音导致Python写代码无法使用pyaudio进行录制系统声音怎么办?查阅资料和安装驱动等方法都不行,难道没办法了吗?那为什么电脑其他软件可以做到呢?因此研究了一下pyaudio在没有立体声混音情况下确实无法录制声音&a…

FreeRTOS学习--41讲 信号量

信号量的定义 是一种解决同步问题的机制,实现对共享资源的有序访问 信号量特点: 当计数值大于0,代表有信号量资源;释放信号量,信号量计数值1;获取则-1 队列和信号量的差异 二值信号量: a.相当于队列长度等…

【C++】STL 容器 - map 关联容器 ① ( std::map 容器简介 | std::map 容器排序规则 | std::map 容器底层实现 )

文章目录 一、std::map 容器1、std::map 容器简介2、std::map 容器排序规则3、std::map 容器底层实现 二、代码示例 - std::map 容器1、代码示例2、执行结果 一、std::map 容器 1、std::map 容器简介 std::map 容器 是 C 语言 标准模板库 ( STL , Standard Template Library ) …

CGAL的AABB tree

1、介绍 AABB树组件提供了一种静态数据结构和算法,用于对有限的三维几何对象集进行高效的交集和距离查询。可以查询数据结构中存储的几何对象集,以进行交集检测、交集计算和距离计算。 交集查询可以是任何类型的,只要在traits类中实现了相应的…

Docker 部署RAP2

1、Github介绍 https://github.com/thx/rap2-delos 2、安装Docker环境 yum install -y yum-utils device-mapper-persistent-data lvm2 yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo yum install -y docker-ce systemctl enable…

华为商城秒杀时加密验证 device_data 的算法研究

前言 之前华为商城放出 Mate60 手机时, 想给自己和家人抢购一两台,手动刷了好几天无果后,决定尝试编写程序,直接发送 POST 请求来抢。通过抓包和简单重放发送后,始终不成功。仔细研究,发现 Cookie 中有一个名为 devic…

HTML5+CSS3③——无语义布局标签、画盒子、CSS定义、CSS引入方式

目录 无语义布局标签 画盒子 CSS定义 小结 CSS引入方式 小结 无语义布局标签 画盒子 CSS定义 小结 CSS引入方式 小结

Vue2 - Vue.observable 介绍

目录 1,介绍2,使用场景和 Vue 实例的区别 1,介绍 官网参考 可以让一个对象变成响应式数据。在 Vue 内部就是用它来处理传递给 Vue 的 data 对象,或是在单文件组件中 data() 返回的对象。 var vm new Vue({data: {count: 0} })…

MAC 中多显示器的设置(Parallels Desktop)

目录 一、硬件列表: 二、线路连接: 三、软件设置: 1. 设置显示器排列位置及显示参数 2. 分别设置外接显示器为:扩展显示器,内建显示器为主显示器 3. 设置Parallels Desktop屏幕参数 四、结果 一、硬件列表&a…

Spark SQL简介与基本用法

Apache Spark是一个强大的分布式计算框架,Spark SQL是其组件之一,用于处理结构化数据。Spark SQL可以使用SQL查询语言来查询和分析数据,同时还提供了与Spark核心API的无缝集成。本文将深入探讨Spark SQL的基本概念和用法,包括数据…

MongoDB的基本使用

MongoDB的引出 使用Redis技术可以有效的提高数据访问速度,但是由于Redis的数据格式单一性,无法操作结构化数据,当操作对象型的数据时,Redis就显得捉襟见肘。在保障访问速度的情况下,如果想操作结构化数据,…

STM32F407-14.3.10-表73具有有断路功能的互补通道OCx和OCxN的输出控制位-00x10

如上表所示,MOE0,OSSI0,CCxE1,CCxNE0时,OCx与OCxN的输出状态取决于GPIO端口上下拉状态。 ---------------------------------------------------------------------------------------------------------------------…

学生管理系统(vue + springboot)

学生管理系统(vuespringboot)资源-CSDN文库 项目介绍 这是一个采用前后端分离开发的项目,前端采用 Vue 开发、后端采用 Spring boot Mybatis 开发。 项目部署 ⭐️如果你有 docker 的话,直接 docker compose up 即可启动&#…

PyTorch常用工具(1)数据处理

文章目录 前言1 数据处理1.1 Dataset1.2 DataLoader 前言 在训练神经网络的过程中需要用到很多的工具,最重要的是数据处理、可视化和GPU加速。本章主要介绍PyTorch在这些方面常用的工具模块,合理使用这些工具可以极大地提高编程效率。 由于内容较多&am…
最新文章