Linux Docker容器间网络连接配置教程

创始人
2025-02-03 17:45:59
0 次浏览
0 评论

Linux下配置Docker容器间网络连接的教程

本文主要介绍教程,以连接Linux下码头容器之间的网络连接。
P> Dokar容器是一个独立且独立的环境。
但是,它们通常在彼此交流时起着作用。
尽管有许多连接容器的方法,但我不会尝试讨论它们。
但是,在这一系列方法中,我们将看到这些通常使用的方法。
尽管看起来很简单,但要了解这些技术和底部级别的设计概念非常重要。

配置是在与显示容器关联之前,我们需要安装一对容器作为示例。
第一镜将从简单的Ubuntu操作系统中安装。
它将扮演客户容器的角色。
首先,我们制作容器并将其连接。

复制代码代码如下:$ sudodockerrun-itd-name = client_setupubuntu/bin/bin/bin/bas h $ sudodockertachclient_setup。
在键盘方向区域。
安装容器后,执行CTRL+P和CTRL+Q命令以离开容器。
然后,我们停下来存放容器。
复制代码如下:$ sudodockerstopclient_setup $ sudodockercommitclient_setupclient_img。
第二个容器是从以前的Ubuntu操作系统的安装中获得的。
但是这次,我们将将其修改为运行ApacheHTP的服务器容器。
首先,我们像以前一样进行连接:复制代码如下:复制代码如下:$ apt-getInstallapache2安装容器时,ctrl+p和ctrl+以脱离容器,然后ctrl+ p和ctrl+脱离容器。
现在,我们预防容器并提交:复制代码如下:$ sudodockerstopserver_setup $ sudodockercommitserver_setupserverver_img,现在我们有两个镜像,分别是client_img and server_img。
设置它们后,我们可以找出添加多个容器的可能性。

Dokar Bridge单Dokar容器与其他容器和外部网络不同。
Docker提供了一个称为“门0”的桥接接口,该桥接接口实际上是在安装Dokengin时建立的。
它可以在容器,容器和主机之间通过Docker的桥接接口进行通信。
我们可以在Dokar Basti上看到Dokrabridge:

复制代码代码如下:$ ifconfigocker0。
A2:A2:A2:A2:A2:A2:A2:DC:0F:0F:A8INETADR:172.17.0.1BCAST:0.0.0.0.0mask:255.25.25.0.0.0.0.0.0.0.0inet6addr:fe80 :: 42:fadc:fadc:fadc:fadc:fadc:fa8/64scope:mtmtmtrric:150000年:1rxpackets。
它在董事会上运行,本文提到了我们文章所有三种方法背后的连接机制。
在下一章中,我们将转向覆盖界面,该界面允许该接口在几个门化妆品主机上部署网络容器。

港口公开暴露了外界港口。
为此,我通过曝光命令运行容器。
当然,其他容器可以访问开放端口。
让我们运行server_img并将容器命名为服务器1,然后披露其80端口:

复制代码代码如下:$ sudodockerrun-ex-ax-ax-axpose = 80-name = server1rver_img/bas/bas/bas/bas/bas/bas/bash next我们将按顺序命名这些容器(Server1,Server2等)。
然后,连接到容器:复制代码如下:$ sudodockertachserver1重复它。
在容器中启动apachehttp服务:复制代码如下:$/etc/initiaदेखें: कॉपी कोड कोड निम्नानुसार है: $ IFCONFIGURETH0LINKENCAP: ETHERNETHWADDR02: 42: AC: 11: 00 : 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00 : 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00: 00 :00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00 03INETADDR:172.17.0.0.0.0.3bcast:0.0.0.0.0.0mask:0.0.0.0mask:0.0.0mask:0.0.0mask::00: 255.255.0.0.172.17.0.3कआईपीहै। है। है। है। 让我们从客户端容器中尝试此信息。
打开第二个终端。
使用客户端1:复制代码的名称启动容器:$ sudodockerrun-itd-name = client1client_img/bash容器在容器中查看:复制代码代码如下:复制代码如下:复制代码如下:复制代码为:如下:$ sudodockertachclient1您看不到外壳寿命,看不到页岩寿命提示,您可以在债券顶部使用箭头的方向。
让我们测试服务器1:复制代码的连接如下:$ curl172.17.0.3如果一切正常,则应基于ApacheHTTP服务观看默认页面。
这表明可以使用Server1容器的HTTP端口正确安装Client1容器。
端口绑定端口。
在此方案中,我们必须将主机端口绑住以绑住容器端口。
为了允许Apache HTTP服务器打开主机所在的网络,我们需要将80个容器端口与主机上的8080端口联系起来。
我们可以根据以下命令来执行此操作:复制代码如下:$ sudodockerrun-itd-p8080:80-name = server2server_img/bin/bash/bash选项-p8080:80个选项。
现在,查看卷:复制代码如下:$ sudodockertachserserver2如果您看不到shell的prumpt,就像以前一样,像以前一样,将箭头按在方向区域向上按,然后我们启动http服务:复制代码代码:代码代码代码代码代码代码代码代码:$/TC/init.d/apache2start现在,我们可以访问http:// localhost:8080/,我们应该能够基于ApacheHTTP服务查看默认页面。

主机网络中的任何机器都可以到达主机发布的端口8080部分。

容器链接linkingContainersDocker被引用到另一个容器中包含的容器的链接。
当您将一个容器链接到另一个容器时,码头将通过这些容器之间的某些环境变量添加信息。
我们可以看看。
首先,启动服务器容器。

复制代码如下:$ sudodockerrun-itd-name = server3server_img/bash/bash,然后启动客户端的容器,并通过以下命令链接到服务器容器。
复制代码如下:$ sudodockerrun-itd-linkServer3-name = client3client_img/bash,请注意,我们在此处使用linkServer3选项。
Then we log in to the client machine container at a glance: Copy the code code as follows: $ SudodocKkertachClient3 and then we check the environmental variables available: Copy code code is as follows: $ GREPSERVERVERVERVERVERVERVERVERVERVERVERVERVERVERVERVERVERVERVERVERVERVERVERVERVERVERVERTOOTO = TCPORT = TCPT: // 172.17 0.2: 80server3_port_80_tcp_port = 80server3_name = /client3/server3rver3_port_80_tcp = tcp://172.17.0.0.2:80Server3_Port_Port_80_80_17.17.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2drariars बुक। 服务器容器。
要展示这种情况,让我们运行以下命令以查看:复制代码:$ curlsarwar 3,您应该能够重新查看相同的默认HTML页面。

摘要在本系列的第一部分中,我们介绍了Dokar Bridge桥接接口,该桥梁使我们能够将容器添加到同一主机。
我们还讨论了以下三种连接方法:1。
通过端口2打开曝光连接。
将主机端口与容器端口3联系。
通过链接链接链接连接两个容器

Podman和Docker的安装、部署和设置

引入Linux容器容器

Linux容器是隔离运行的多处理集合,提供了一致性和更快的接枝。
图像提供了容器中的所有文件,以确保应用程序具有库,依赖性和必要文件,并实现没有负面影响的移动。
容器基本上是Linux发行版本的安装,包括所有软件包,配置文件等。

容器的受欢迎程度和使用使其成为IT安全性的重要组成部分。
诸如下一个Docker和Container之类的容器发动机符合OpenContainerItiative(OCI)标准,例如Podman,为现代数据中心提供了必要的支持。

Docker是一种开源容器工具,可提供简单的容器接口,允许开发人员打包并依赖移植材料并在Linux机器上运行。
但是,Docker有两个主要的缺点。

podman是一个不是受保护程序的容器管理工具。

诸如Podman,Skopeo和Buildah等新的容器体系结构工具可以解决Docker Guardian计划引起的启动和安全问题问题。

Podman和Docker之间的主要区别是需要运行Dockerdaemon的Docker,而Podman不需要此步骤。

Podman部署和一般活动

Podman安装很容易安装。
Archlinux&Manjarolinuxcentos,Fedora,Rhelgemacos

通常使用的基本命令包括:​​

podmaninfopopodmanversionpodmanrmodmanrmodmanrmodmanrmodmanrs

podmancli,例如dokockercerli。

容器活动和管理的基本活动包括:

运行所有容器的容器列表以查看镜像信息以查看容器信息查看相关docker容器资源的信息,然后选择许多步骤,并选择不同的方法根据操作系统,例如在线部署或离线部署。
在线部署通常与安装软件包,配置和Dockerce仓库的安装有关,而离线部署需要其他步骤,例如下载RPM软件包和创建EPO安装以创建仓库。

完成实施后,有必要进行相关设置。
加速度,默认网络的配置,等等。

功能的验证包括启动Docker,查看状态,慢跑,检查Dockerdaemon日记和删除Docker。

摘要

本文介绍了容器和简单的容器活动,比较了Docker和Podman之间的差异。
尽管Docker广泛主导,但满足OCI标准的Podman逐渐成为主流选择,因为它更轻,灵活和安全。
随着技术的开发,新的容器工具不断出现,并且可以构建与Docker完全兼容的容器环境。

热门文章
1
JavaScript数组转字符串:两种方... 如何 用 js把 数组 转换成 字符串这里的系列窗口为您提供了两种方式。1。使用...

2
C语言实现三角形面积计算:海伦公式应用实... 如何用c语言编写已知三角形三边求面积?已知语言C可以找到三角形三角侧的面积,如下...

3
计算机专业核心:C语言在多学科中的应用与... 哪些专业学c语言对于计算机专业来说,入门级编程语言C是用来为学生的编程打下坚实的...

4
JSF架构解析与Java学习资源分享:J... JavaServerFacesJSF体系结构JavaServerFaces(JS...

5
数据结构C语言版深度解析与C语言入门很简... 《数据结构(C语言版)》.严蔚敏吴伟民著.pdf在《数据结构(C语言版)》一书中...

6
C语言字符串常量解析:区别、用途及存储方... 什么是字符串常量字符串常量是C语言中的一种数据类型,它是由一对双引号括起来的字符...

7
C语言printf函数:格式字符串与输出... printf函数中的格式与输出项有什么关系?在C语言中,printf函数中的格式...

8
Excel技巧:计算字符串起始位置与合并... 如何计算字符串在特定文本中的起始位置,怎么计算字符串在特定文本中的起始位置您可以...

9
Python发音全解:掌握正确的发音方法... python怎么读我的很多学习编程的朋友可能都知道Python这个词,但是他们中...

10
字符与字符串:编程中的基础文本类型解析 字符串什么意思字符串是由数字、字母和下划线组成的字符串,表示为s=“a1a2…a...