docker小白第十二天

docker小白第十二天

docker network简介

docker不启动时默认的网络情况。

# 停止docker服务
systemctl stop docker.socket
systemctl stop docker
# 查看docker镜像
docker images

输入查看docker镜像命令后,显示未连接到docker服务器
在这里插入图片描述
docker启动时网络情况

systemctl start docker
docker images

可以看到很多镜像
在这里插入图片描述
此时在查看虚拟机当前的网卡情况,会有一个docker0的虚拟网桥。

ifconfig

在这里插入图片描述

# 查看docker 网络命令
docker network ls

安装完docker后,默认会自动创建三大网络模式,分别为bridge、host、none

在这里插入图片描述

# docker 查看网络命令帮助
docker network --help
# 查看某个网络信息
docker network inspect 网络名字

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

docker网络能干什么

在这里插入图片描述

docker网络模式

在这里插入图片描述

docker网络模式学习案例

# 新建两个ubuntu容器,命名为u1和u2并进入命令行界面
# exit是退出命令行界面,会直接关闭非后台守护式的进程
# ctrl+p+q 退出,任何后台进程均保留
docker run -it --name=u1 ubuntu /bin/bash
docker run -it --name=u2 ubuntu /bin/bash
# 查看已创建的镜像
docker ps

在这里插入图片描述

# 查看容器的网络模式
docker inspect u1

可以看到容器u1的ip、网关、网桥名。需要注意的是docker中的ip是动态分配的,即某个容器停止了或者被删除后,其ip将被紧接着新建的容器使用。
在这里插入图片描述

docker网络模式之bridge

# 查看docker网络列表
docker network ls
# 查看docker网络模式的网桥信息
docker network inspect bridge

在这里插入图片描述
在这里插入图片描述在这里插入图片描述

在这里插入图片描述

# 启动两个容器,端口分别为8081和8082
docker run -d -p 8081:8080 --name tomcat81 billygoo/tomcat8-jdk8
docker run -d -p 8082:8080 --name tomcat82 billygoo/tomcat8-jdk8
docker ps

观察到已经实际启动了两个容器
在这里插入图片描述
输入ip addr可以看到多了很多网卡信息
在这里插入图片描述
进入容器内部查看ip信息

docker exec -it tomcat81 bash
ip addr

可以看到17:eth0@if18,与在宿主机查看的18: vethbb23d64@if17相呼应。即宿主机上显示名称为veth,容器内部显示名称为eth0
在这里插入图片描述

network之host

直接使用宿主机的ip地址与外界进行通信, 不在需要额外进行NAT转换。在这里插入图片描述

# 以host网络模式创建一个后台守护式的容器
docker run -d -p 8083:8080 --network host --name tomcat83 billygoo/tomcat8-jdk8

发现出现一个警告,而且docker ps查看并没有出现像之前一样的0.0.0.0:8083->8080/tcp,这样的一个映射关系。
在这里插入图片描述
在这里插入图片描述
那么此时删掉-p 的参数 重新建立一个容器tomcat8083

docker stop tomcat83
docker remove tomcat83
docker run -d --network host --name tomcat83 billygoo/tomcat8-jdk8
# 查看宿主机的网络情况
ip addr
# 查看容器tomcat83的网络情况
docker inspect tomcat83

在这里插入图片描述
可以看到因为是host模式,容器tomcat83没有自己的ip和网关。
在这里插入图片描述

# 进容器内部查看网络信息
docker exec -it tomcat83 bash
ip addr

可以看到容器内部输入ip addr时与宿主机的信息几乎一样
在这里插入图片描述
因为host模式没有设置-p容器的端口映射关系了,访问刚刚启动的tomcat83,只需要访问宿主机ip:8080端口即可,因为此时容器的ip借用宿主机的.

# 如果浏览器访问无效,关闭linux宿主机的防火墙
systemctl stop firewalld

在这里插入图片描述

网络模式之none

就是禁用网络功能,只有lo标识(就是127.0.0.1表示本地回环)在这里插入图片描述

# 建议一个网络模式为none的容器tomcat84
docker run -d -p 8084:8080 --network none --name tomcat84 billygoo/tomcat8-jdk8
docker ps

在这里插入图片描述
在容器外的宿主机上查看tomcat84网络信息

docker inspect tomcat84

在这里插入图片描述
进容器tomcat84内查看ip addr发现只有一个lo

docker exec -it tomcat84 bash
ip addr

在这里插入图片描述

网络模式之container

新创建的容器不会创建自己的网卡和配置自己的IP,而是和一个指定的容器共享IP、端口范围等。
在这里插入图片描述

# 创建两个容器分别为tomcat85和tomcat86
docker run -d -p 8085:8080 --name tomcat85 billygoo/tomcat8-jdk8
# tomcat86借用tomcat85容器的网络
docker run -d -p 8086:8080 --network container:tomcat86 --name tomcat85 billygoo/tomcat8-jdk8

执行第二个命令报错,相当于tomcat86和tomcat85共用一个ip一个端口,导致端口冲突,使用tomcat镜像不合适。
在这里插入图片描述
使用Alpine操作系统进行案例演示。Alpine操作系统是一个面向安全的轻型linux发行版。

docker run -it --name alpine1 alpine /bin/sh
docker run -it --network container:alpine1 --name alpine2 alpine /bin/sh

在两个新建的容器内查看ip addr发现网卡信息是一样的
在这里插入图片描述
在这里插入图片描述
如果此时exit关闭退出alpine1容器,并docker stop alpine1,查看alpine2容器的信息如下。只剩了lo网卡信息。
在这里插入图片描述

网络模式之自定义网络模式

# 启动两个docker实例tomcat81 和tomcat82
docker run -d -p 8081:8080 --name tomcat81 billygoo/tomcat8-jdk8
docker run -d -p 8082:8080 --name tomcat82 billygoo/tomcat8-jdk8
# 进入容器内部
docker exec -it tomcat81 bash
docker exec -it tomcat82 bash

分别输入ip addr,查看两个容器ip,一个为172.17.0.2,一个为172.17.0.3.并且两个容器之间可以互相ping通
在这里插入图片描述
在这里插入图片描述
此时如果不是pingIP,而是ping服务名,则会变成unknown错误。因为ip在容器内是可能变换的,所以ping服务名更准确,但是需要自定义网络模式。

引入自定义桥接网络

自定义桥接网络,自定义网络默认使用的是桥接网络bridge。

# 创建一个自定义桥接网络,网络名字叫cc_network
docker network create cc_network
# 查看网络信息
docker network ls

在这里插入图片描述
新建容器加入自定义网络

# 删除上一步新建的两个容器,未使用自定义网络
docker stop tomcat81
docker stop tomcat82
docker rm -f tomcat81
docker rm -f tomcat82
# 新建容器加入自定义网络
docker run -d -p 8081:8080 --network cc_network --name tomcat81 billygoo/tomcat8-jdk8
docker run -d -p 8082:8080 --network cc_network --name tomcat82 billygoo/tomcat8-jdk8

进入新建的容器内部

docker exec -it tomcat81 bash
docker exec -it tomcat82 bash

ping容器名字

ping tomcat81

可以看到能ping通了,建议在使用docker集群环境下多个容器时,用ping容器名比较准确,
在这里插入图片描述
总结:自定义网络本身就维护好了主机名和ip的对应关系( ip和域名都能通,自定义网络提供自动dns解析,可以通过服务名调用)

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

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

相关文章

使用BBDown下载bilibili视频的方法

一款命令行式哔哩哔哩下载器. Bilibili Downloader. 下载地址 https://github.com/nilaoda/BBDown 功能 番剧下载(Web|TV|App) 课程下载(Web) 普通内容下载(Web|TV|App) 合集/列表/收藏夹/个人空间解析 多分P自动下载 选择指定分P进行下载 选择指定清晰度进行下载 下载外挂字幕…

html--bug

文章目录 html html <!DOCTYPE html> <html><head><meta charset"UTF-8"><title>老师</title><style>body {background-color: #008000;margin: 0px;cursor: none;overflow: hidden;}</style></head><bod…

88. 合并两个有序数组 (Swift版本)

题目 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2&#xff0c;另有两个整数 m 和 n &#xff0c;分别表示 nums1 和 nums2 中的元素数目。 请你 合并 nums2 到 nums1 中&#xff0c;使合并后的数组同样按 非递减顺序 排列。 注意&#xff1a;最终&#xff0c;合并…

深度解析Java JDK 1.8中Stream流的源码实现:带你探寻数据流的奥秘

文章目录 一、 Stream流概述1.1 什么是Stream流&#xff0c;以及它的主要特点和优势1.2 Stream流的基本操作&#xff1a;过滤、映射、排序等 二、 Stream流源码解析2.1 接口和基本概念2.2 创建流2.3 源码分析2.3.1 流的起始2.3.2 流的初始2.3.3 认识BaseStream2.3.4 Stream接口…

java-ssm-jsp基于java的餐厅点餐系统的设计与实现

java-ssm-jsp基于java的餐厅点餐系统的设计与实现 获取源码——》公主号&#xff1a;计算机专业毕设大全

RabbitMQ:1.概述及安装

概述 AMQP协议 MQ Message Queue&#xff08;消息队列&#xff09;是在消息的传输过程中保存消息的容器&#xff0c;多用于系统之间的异步通信 AMQP Advanced Message Queuing Protocol(高级消息队列协议)是一个网络协议&#xff0c;2006年AMQP规范发布【类比HTTP】 专门为消…

基于单片机的公交车IC卡操作系统的设计

目 录 摘 要 III Abstract IV 前 言 1 第一章 绪论 2 1.1 设计的背景和意义 2 1.2 设计的现状和发展 2 1.3 设计的目的与意义 2 第二章 总体设计 4 2.1 总体方案的设计与实现 4 2.1.1 主要设计的内容 4 2.1.2 系统的总体设计 4 2.2 系统方案论证 5 2.2.1 单片机的选择 6 2.2.2…

Ubuntu虚拟机的IP总频繁变化,导致Xshell断开连接

文章目录 一、IP变化的原因二、解决方法&#xff1a;固定IP三、参考文章 一、IP变化的原因 1.DHCP协议 虚拟机系统(Ubuntu、CentOS、UOS等Linux系统)启动后&#xff0c;加入本地局域网网络时&#xff0c;会向本地网络申请租约一个IP地址&#xff0c;租约时长不定。我这里租约时…

独立开发的轻量级简洁开源论坛BBS PHP源码 – 2023新版发布

最新的轻量级开源论坛php源码发布啦&#xff01;这是一款独立开发的论坛系统&#xff0c;可以帮助你快速地开发出你想要的网站。 如果你是PHP初学者&#xff0c;这款论坛系统非常适合你入门学习。不过&#xff0c;需要注意的是&#xff0c;由于它并没有进行商业化改造&#xf…

如何正确地设置Outlook SMTP发送电子邮件?

Outlook SMTP发送邮件配置方法&#xff1f;Outlook怎么开启SMTP&#xff1f; 在使用Outlook发送邮件时&#xff0c;正确设置SMTP服务器是确保邮件能够顺利发送的关键步骤。接下来&#xff0c;就让AokSend一起探讨如何正确地设置Outlook SMTP发送电子邮件吧&#xff01; Outlo…

Notepad++从文件夹查找文本内容

目录 一、背景二、Notepad搜索2.1 测试用例2.2 操作说明 一、背景 在日常的办公、学习或编程中&#xff0c;我们时长会遇到需要在大量文件中搜索特定文本内容的情况&#xff1a; 无论是快速定位某个项目中的代码片段&#xff1b;还是检索文档资料库中的相关信息等。 掌握如何…

义乌购关键字搜索API接口技术详解与代码示例

义乌购关键字搜索API接口技术详解与代码示例 在电子商务蓬勃发展的今天&#xff0c;义乌购作为国内知名的批发市场平台&#xff0c;为广大商家和消费者提供了丰富的商品资源。为了方便开发者快速接入义乌购平台&#xff0c;实现商品信息的搜索与获取&#xff0c;义乌购开放了关…

音频读取之wave和liborsa

wave 常见的语音信号处理python库有librosa, scipy, soundfile等等。wave库是python的标准库&#xff0c;对于python来说相对底层&#xff0c;wave不支持压缩/解压&#xff0c;但支持单声道/立体声语音的读取。 读取音频 import wave #导入库file_path D:/ba.wav #文件路径…

Vue2 + node.js项目

1、Vue2 vue2主要功能包括登入、退出、用户权限、表格的增删改查、文件下载。 Vue2项目地址https://gitee.com/www6/finance1.git 2、node.js编写后端接口 2.1、项目初始化 后端地址https://gitee.com/www6/finance-backend.git 创建项目 npm install -g koa-generator …

有趣的前端知识(三)

推荐阅读 有趣的前端知识&#xff08;一&#xff09; 有趣的前端知识&#xff08;二&#xff09; 文章目录 推荐阅读JS内置对象JS外部对象BOM模型history对象screen对象navigator对象 DOM&#xff08;文档对象模型&#xff09;DOM的方法&#xff08;对于节点的操作&#xff09…

【打工日常】docker部署快速开发海报工具

一、fastposter海报生成器介绍 fastposter 是一款海报生成器&#xff0c;它能够让您快速、轻松地创建各种类型的海报。 只需上传一张背景图&#xff0c;然后在需要的位置添加文字、图片、二维 、头像等组件。点击生成代码按钮&#xff0c;直接获取各种语言 SDK 的调用代码&…

智能物流新纪元:分布式I/O模块重塑仓储自动化

随着工业4.0概念的深入人心&#xff0c;物流行业正在经历前所未有的变革。在这个过程中&#xff0c;物流企业必须积极走向工业自动化、智能化&#xff0c;进而提高物流效率&#xff0c;降低物流成本&#xff0c;以便更好地满足客户和市场的需求。智能物流、仓库自动化已然是趋势…

Java实现PDF文字内容识别,结合OCR实现PDF图片实现

使用插件&#xff1a;UMI-OCR、PDFBOX 实现思路&#xff1a;通过PDFBOX识别PDF文字&#xff0c;如果是图片&#xff0c;则识别不出来&#xff0c;再调用OCR进行识别返回文字&#xff1b;OCR识别较慢&#xff0c;长图识别不出来&#xff0c;目前HTTP方式只支持图片格式&#xf…

【设计模式】二、UML 类图与面向对象设计原则 之 UML概述

二、UML 类图与面向对象设计原则 &#xff08;一&#xff09;UML 类图 UML 概述类与类的UML图示类之间的关系 &#xff08;二&#xff09;面向对象设计原则 单一职责原则&#xff08;Single Responsibility Principle, SRP&#xff09;开闭原则&#xff08;Open-Closed Princip…

雅特力车规级MCU-AT32A403A开发板评测 06 GC9A01 SPI-LCD 1.28圆形屏幕

雅特力车规级MCU-AT32A403A开发板评测 06 GC9A01 SPI-LCD 1.28圆形屏幕 硬件平台 AT32A403A Board开发板 1.28寸圆形彩色TFT显示屏高清IPS 模块240X240 SPI接口GC9A01 产品介绍 推荐一个屏幕资料参考网站 http://www.lcdwiki.com/1.28inch_IPS_Module 1.28寸圆形IPS彩屏&…