Docker的一些基础的网络命令小结

时间:2022-03-10 12:36:28 

这篇文章主要介绍了Docker的一些基础的网络命令小结,Docker是当下最火热的虚拟机类技术,需要的朋友可以参考下

各位好,今天我们将学习一些Docker容器的基础命令。Docker 是一个开源项目,提供了一个可以打包、装载和运行任何应用的轻量级容器的开放平台。它没有语言支持、框架和打包系统的限制,从小型的家用电脑到高端服务器,在何时何地都可以运行。它可以使部署和扩展web应用程序、数据库和后端服务像搭积木一样容易,而不依赖特定技术栈或提供商。Docker适用于网络环境,它正应用于数据中心、ISP和越来越多的网络服务。

因此,这里有一些你在管理Docker容器的时候会用到的一些命令。

1. 找到Docker接口

Docker默认会创建一个名为docker0的网桥接口作为连接外部世界的基础。运行中的docker容器直接连接到网桥接口docker0。默认上,docker会分配172.17.42.1/16给docker0,它是所有运行中的容器ip地址的子网。找到Docker接口的ip地址非常简单。要找出docker0网桥接口和连接到网桥上的docker容器,我们可以在安装了docker的终端或者shell中运行ip命令。

   

复制代码代码如下:

# ip a
 Docker的一些基础的网络命令小结

    2. 得到Docker容器的ip地址

如我们上面读到的,docker在宿主机中创建了一个叫docker0的网桥接口。在我们创建一个新的docker容器时,它自动被默认分配了一个在该子网范围内的ip地址。因此,要检测运行中的Docker容器的ip地址,我们需要进入一个正在运行的容器并用下面的命令检查ip地址。首先,我们运行一个新的容器并进入其中。如果你已经有一个正在运行的容器,你可以跳过这个步骤。

   

复制代码代码如下:

# docker run -it ubuntu

现在,我们可以运行ip a来得到容器的ip地址了。

   

复制代码代码如下:

# ip a
Docker的一些基础的网络命令小结

    3. 映射暴露的端口

要映射配置在Dockerfile的暴露端口到宿主机的高位端口,我们只需用下面带上-P标志的命令。这会打开docker容器的随机端口并映射到Dockerfile中定义的端口。下面是使用-P来打开/暴露定义的端口的例子。

   

复制代码代码如下:

# docker run -itd -P httpd
Docker的一些基础的网络命令小结

    上面的命令会映射容器的端口到 httpd 容器的 Dockerfile 中定义的80端口上。我们用下面的命令来查看正在运行的容器暴露的端口。

   

复制代码代码如下:

# docker ps

并且可以用下面的curl命令来检查。

  

复制代码代码如下:

# curl http://localhost:49153
   Docker的一些基础的网络命令小结

    4. 映射到特定的端口上

我们也可以映射暴露端口或者docker容器端口到我们指定的端口上。要实现这个,我们用-p标志来定义我们所需的端口。这里是我们的一个例子。

   

复制代码代码如下:

# docker run -itd -p 8080:80 httpd

上面的命令会映射(宿主机的)8080端口到(容器的)80上。我们可以运行curl来检查这点。

   

复制代码代码如下:

# curl http://localhost:8080
  Docker的一些基础的网络命令小结

    5. 创建自己的网桥

要给容器创建一个自定义的IP地址,在本篇中我们会创建一个名为br0的新网桥。要分配需要的ip地址,我们需要在运行docker的宿主机中运行下面的命令。

   

复制代码代码如下:

# stop docker.io
   # ip link add br0 type bridge
   # ip addr add 172.30.1.1/20 dev br0
   # ip link set br0 up
   # docker -d -b br0
Docker的一些基础的网络命令小结

6. 创建自己的网桥

要给容器创建一个自定义的IP地址,在本篇中我们会创建一个名为br0的新网桥。要分配需要的ip地址,我们需要在运行docker的宿主机中运行下面的命令。

   

复制代码代码如下:

# stop docker.io
   # ip link add br0 type bridge
   # ip addr add 172.30.1.1/20 dev br0
   # ip link set br0 up
   # docker -d -b br0
Docker的一些基础的网络命令小结

    到这里,桥接后的接口将会分配给容器在桥接子网内的新ip地址。
7. 链接到另外一个容器上

我们可以用Docker将一个容器连接到另外一个上。我们可以在不同的容器上运行不同的程序,并且相互连接或链接。链接允许容器间相互连接并从一个容器上安全地传输信息给另一个容器。要做到这个,我们可以使用--link标志。首先,我们使用--name标志来标示training/postgres镜像。

   

复制代码代码如下:

# docker run -d --name db training/postgres
Docker的一些基础的网络命令小结

    完成之后,我们将容器db与training/webapp链接来形成新的叫web的容器。

   

复制代码代码如下:

# docker run -d -P --name web --link db:db training/webapp python app.py
Docker的一些基础的网络命令小结

    总结

Docker网络很神奇也好玩,我们可以对docker容器做很多事情。我们可以把玩这些简单而基础的docker网络命令。docker的网络是非常先进的,我们可以用它做很多事情。

如果你有任何的问题、建议、反馈请在下面的评论栏写下来以便于我们我们可以提升或者更新文章的内容。谢谢! 玩得开心!:-)

标签:Docker,网络
0
投稿

猜你喜欢

  • 回收站不小心清空文件后的恢复方法

    2022-12-04 14:28:32
  • Win7系统回收站右键菜单怎样添加“清理垃圾”选项

    2022-10-10 07:19:59
  • PowerPCB怎么安装?Win10安装PowerPCB教程

    2022-04-29 15:35:51
  • 微软:Win10 Edge以及IE11等主流浏览器2016年初将停止支持RC4加密算法

    2023-11-16 21:44:56
  • 全国计算机等级考试二级MS Office知识点排查Excel部分

    2023-11-08 23:52:09
  • 在Word2010中添加分页符的高招

    2022-02-11 16:17:58
  • PPT尺寸一般多大?PPT尺寸设置方法

    2022-12-11 03:01:50
  • wps如何设置页面

    2022-09-01 13:11:19
  • Win7右键没有个性化的原因分析

    2022-04-03 08:08:55
  • Win11如何设置高级共享权限?Win11设置高级共享权限的方法

    2022-09-18 06:35:36
  • Win10 1903最新KB4517211导致旧版VMware受影响

    2022-10-22 15:26:50
  • 如何对EXCEL列进行指定顺序排列

    2023-08-07 02:42:18
  • 罗技驱动怎么设置鼠标宏?手把手教你快速设置罗技驱动鼠标宏!

    2023-10-25 08:09:10
  • 使用Excel制作工资条的方法步骤

    2023-10-13 03:55:37
  • XP系统禁止QQ窗口抖动的技巧

    2022-07-17 23:51:08
  • Windows7系统如何添加或删除输入法操作图解

    2023-08-27 07:42:13
  • Win7纯净版打开网页死机怎么解决?电脑打开网页

    2023-01-13 20:24:51
  • word文档成乱码怎么办

    2023-12-13 02:02:54
  • win11玩LOL黑屏了怎么办?win11玩LOL黑屏的两种解决方法

    2023-11-18 08:55:00
  • excel 如何移动到数据区域最后一行或列:双击单元格边缘

    2023-04-25 17:37:09
  • asp之家 电脑教程 m.aspxhome.com