docker 网络

news2024/11/19 9:34:08

前言

随着容器的普及,经常使用docker创建容器来跑应用,结合开源的kubernetes和istio等,对于无状态的服务有极好的支持能力,秒级调度,弹性伸缩等优势。实际上kube的容器仅仅是接口,实际的容器可以是docker,podman等,以docker为例。

默认网络

默认即bridge网络,虽然名为桥接,实际上是NAT,在Linux是原生运行docker的,在mac和win是虚拟机运行的,经常可以看到qemu的进程,以ubuntu为例,安装就不说了,按照官方文档安装:Install Docker Engine on Ubuntu | Docker Documentation

注意官方源有问题,使用其他源即可,比如清华源。,安装后执行ifconfig

 

docker0网桥,即NAT的实现,虚拟路由,创建了127.17的网关,意味着默认创建的容器IP都是172.17开头的IP,同理可以使用端口映射的方式对外提供服务,实际上在kube中会有kube proxy代理,提供更复杂的lvs等扁平网络。还有很多开源的网络方案,比如:Flannel,Calico 和 Cilium

docker必须root运行,笔者以ubuntu镜像为例

 运行ubuntu

docker run -itd --name ubuntu-demo ubuntu   #如果只有-d,容器很快就运行结束了。

docker exec -it ubuntu-demo bash

直接进入容器,进入容器就是root权限。但是ubuntu官方的镜像只有基础命令,只能换源安装net-tools命令

mv /etc/apt/sources.list /etc/apt/sources.list.bak

cat >> /etc/apt/sources.list << EOF
deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
EOF

换源后执行apt update ,不能使用https,因为镜像没有内置证书,需要手动下载证书,然而又没有wget等工具,😭。

apt install net-tools

打包备用

 

ifconfig后可以看到ip地址,在桥接下实际上是NAT网络,网关是172.17.255.255,实际上网关是可以设置的,即设置docker0虚拟网卡。 手动设置网络一样

 结果

 

host

设置host试试,实际上host和none模式仅在特殊时候使用

 可以看见宿主机的网卡信息,容器跟宿主机网络一模一样,公用宿主机网络

 

none

none模式就很特殊了,实际上就是localhost

 可以看到仅有127.0.0.1的lo网卡了,是lo不是l0,😅,当然也只能localhost访问了

container

container表示,已有容器是什么网络,启动的容器就是什么网络,这个特性在kube尤其重要

以最后示例为例,创建none同网络容器

创建host同网络容器

创建bridge同网络容器

  

桥接

实际上docker也可以不使用docker0网卡,可以创建虚拟网卡,桥接使用

 比如使用macvlan网络桥接

kube

kube实际上并不定义容器,通过接口调用容器接口,启动容器,kube默认创建pause容器(定义了网络),默认就是bridge网络,其他容器,比如初始化容器,伴生容器,应用容器都是container模式运行的。

总结

实际上kube就是容器的管理器,核心思想是调度,调度就需要网络、流量治理能力(kube目前薄弱环节),就出现了各种网络方案,istio等。容器的核心网络在kube是pause容器创建的,其他容器通过container沿用网络方案,即一个POD。

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

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

相关文章

布隆过滤器

文章目录前导布隆过滤器特点映射方式hash 函数BloomFiltersettestreset相关问题应用示例哈希切分例子今天是1024程序员节,祝各位节日快乐啦!!!前导 我们之前使用位图bitset,只能将一个整数映射到比特位上&#xff0c;来判断某个数是否存在 但是假如我们也想把判断一个字符串是…

【Linux】yum 与 vim 的基本使用

文章目录一、yum 背景知识1、商业生态2、开源生态3、软件生态本土化二、yum 的基本使用1、查看软件包2、安装软件3、卸载软件三、vim 的基本使用1、vim 的基本概念2、vim 的基本操作2.1 模式间切换2.2 光标定位2.3 文本复制2.4 文本编辑2.5 底行模式的操作四、简单 vim 配置2、…

前端工程化<npm、cnpm、yarn、npx、pnpm等包管理工具>

平时工作中&#xff0c;像npm、cnpm、yarn等一些工具都是经常经常用的&#xff0c;但可能对里面的一些细节都没太在意&#xff0c;所以这篇就来总结一下加深印象和理解。另外还有pnpm的使用&#xff0c;以及它的优势 1. npm包管理工具 包管理工具npm Node Package Manager&a…

『Halcon与C#混合编程』011_工业相机的SDK介绍

这里以淘宝上的显微精工店铺的相机为例(支持SDK) 一、相机的SDK简单介绍 第一步:安装好驱动,并能正常打开相机 第二部:找到相机的安装目录,查看厂家提供的Demo和开发手册 在Demo中找到C#的Demo,运行Demo.sln 第三步

基于Matlab使用粒子滤波器和高斯滤波器跟踪单个对象(附源码)

此示例说明了如何使用粒子滤波器和高斯和滤波器来跟踪使用仅范围测量的单个对象。 一、介绍 只能观察范围信息的传感器无法通过单次检测提供对物体状态的完整了解。此外&#xff0c;当以笛卡尔坐标系表示时&#xff0c;仅范围测量的不确定性是非高斯的&#xff0c;并产生凹形…

python作业8

目录 1.输入一个整数判断奇数偶数 2.判断一个数是否能被7或11整除但不能同时整除 3.判断某一年是否为闰年&#xff1a;能被4整除但不能被100整除&#xff0c;或者能被400整除 4.《车辆驾驶人员血液、呼气酒精含量阈值与检验》标准中规定&#xff1a;驾驶员血液酒精小于20mg/…

基于Hi3861的听话的狗子

听话的狗子一、项目介绍二、硬件介绍&#xff08;1&#xff09;Hi3861最小系统电路&#xff08;2&#xff09;电源管理电路&#xff08;3&#xff09;USB转串口电路烧录电路&#xff08;4&#xff09;外设接口电路三、PCB设计四、软件部分简介&#xff08;1&#xff09;代码整体…

在 ESP 开发板上开发 UI 不再复杂

如果您尝试过在没有图形库的情况下开发 UI&#xff0c;那么您一定知道这有多困难。幸运的是&#xff0c;由乐鑫芯片驱动的屏幕&#xff0c;可支持用户使用多种图形库来开发 UI&#xff0c; LVGL 就是其中之一。通常情况下&#xff0c;在使用 LVGL 或类似的图形库前&#xff0c;…

SPI、RS232、485、IIC通信协议详细总结

通信协议大全 文章目录通信协议大全前言一、异步通信和同步通信二、RS232和RS4851.RS2322.RS4853.RS232和RS485的区别4.RS232、485与普通串口的区别&#xff1f;三、SPI协议四、IIC协议1.IIC的时序介绍2.IIC传输数据的格式总结前言 通信协议是每一个嵌入式工程师必备的技能。下…

几道简单的Linux驱动相关面试题,你看你会几题?

一、Linux基础 1、任意3种网络操作的Linux命令,并说明他们的含义 1. ifconfig 命令 ifconfig 用于查看和配置 Linux 系统的网络接口。 查看所有网络接口及其状态&#xff1a;ifconfig -a 。 使用 up 和 down 命令启动或停止某个接口&#xff1a;ifconfig eth0 up 和 ifconfi…

WEB渗透扫描与加固

WEB渗透扫描与加固 1.通过PC2中渗透测试平台BackTrack5中的httprint工具对服务器场景Server2003检测HTTP服务器(调用signatures.txt), 并将该操作显示结果“Banner Reported:”之后的字符串作为FLAG提交; 切换路径至/pentest/enumeration/web/httprint下 使用命令./httpr…

阿里巴巴面试题- - -多线程并发篇(二十九)

前言:七月末八月初的时候,秋招正式打响,公司会放出大量的全职和实习岗位。为了帮助秋招的小伙伴们,学长这里整理了一系列的秋招面试题给大家,所以小伙伴们不用太过焦虑,相信你们一定能超常发挥,收到心仪公司的Offer~~ 内容涵盖:Java、MyBatis、ZooKeeper、Dubbo、Elast…

网络安全:技术趋势

下面列出了GlobalData确定的影响网络安全的关键技术趋势。 维护IT系统的安全性是各种类型组织的一项长期任务。网络攻击频繁且越来越复杂&#xff0c;由那些推动地缘政治事业的人或意图赚钱的攻击者实施。2021年&#xff0c;由于员工在疫情期间远程工作&#xff0c;企业在网络…

直流信号隔离采样

前言 最近在做一个案子&#xff0c;这个案子中的一点是高压电压信号隔离采样&#xff1b; 常见的隔离有&#xff1a; 光隔离&#xff08;光耦&#xff09; 磁隔离&#xff08;霍尔&#xff0c;变压器&#xff09; 等等。 那么要测量直流电压线性隔离如何实现&#xff1f;…

C语言中程序的环境和预处理简述

文章目录程序是如何执行的?翻译预编译条件编译文件的包含嵌套引用不同的引用方式预定义符号编译汇编链接运行程序是如何执行的? 有时候会问自己&#xff0c;程序的运行是那么简单的事情吗&#xff1f; 我鼠标点到 visual studio 上,程序就跑起来了&#xff0c;然后在界面就能…

项目管理:如何使用甘特图制定项目计划

甘特图能够很直观地显示项目任务、进度随着时间推进的进展情况。 横轴为时间&#xff0c;纵轴为项目事项&#xff0c;用条形图的方式直观地展现项目中所有任务的时间及进度。 它可以直观地表明项目中有哪些任务&#xff1f;任务计划在什么时候进行&#xff0c;及实际进展与计划…

基于Vue+node的图书馆座位预约选座管理系统

目 录 一、绪论 1 &#xff08;一&#xff09;选题背景简介 1 &#xff08;二&#xff09;目的和意义 2 &#xff08;三&#xff09;基本内容及目标 2 二 技术简介 4 &#xff08;一&#xff09; React 4 &#xff08;二&#xff09;Vue 4 &#xff08;三&#xff09;Egg.js 5 …

生产者消费者模型

什么是生产者消费者模型&#xff1f; 生产者和消费是操作系统中一种重要的模型&#xff0c;它描述的是一种等待和通知的机制。一、概念引入 日常生活中&#xff0c;每当我们缺少某些生活用品时&#xff0c;我们都会去超市进行购买&#xff0c;那么&#xff0c;你有没有想过&am…

Node.js之Hello World

目录 简介 1.安装 2.安装后的效果 3.准备尝试运行的代码 4.运行JS代码 5.访问正在运行的代码(Hello World) 简介 Node.js 是一个基于"Chrome V8 引擎" 的JavaScript "运行环境"&#xff1b; NodeJS不是一门编程语言, NodeJS是一个运行环境&#xff…

C语言题解 | 消失的数字轮转数组

… &#x1f333;&#x1f332;&#x1f331;本文已收录至&#xff1a;C语言题解系列 更多知识尽在此专栏中&#xff01; &#x1f389;&#x1f389;&#x1f389;欢迎点赞、收藏、关注 &#x1f389;&#x1f389;&#x1f389;文章目录&#x1f349;前言&#x1f349;正文&…