Docker--network命令的用法

原文网址:Docker--network命令的用法_IT利刃出鞘的博客-CSDN博客

简介

说明

本文介绍Docker的network网络命令的用法。

官网网址

docker network | Docker Documentation

命令概述

所有命令

命令名称

说明

docker network connect

将容器连接到网络

docker network create

创建一个网络

docker network disconnect

断开容器的网络

docker network inspect

显示一个或多个网络的详细信息

docker network ls

列出网络

docker network prune

删除所有未使用的网络

docker network rm

删除一个或多个网络

查看命令的方法

所有命令都可以用--help查看用法,例如:

knife@ubuntu:~$ docker network create --help

Usage:  docker network create [OPTIONS] NETWORK

Create a network

Options:
      --attachable           Enable manual container attachment
      --aux-address map      Auxiliary IPv4 or IPv6 addresses used by Network driver (default map[])
      --config-from string   The network from which to copy the configuration
      --config-only          Create a configuration only network
  -d, --driver string        Driver to manage the Network (default "bridge")
      --gateway strings      IPv4 or IPv6 Gateway for the master subnet
      --ingress              Create swarm routing-mesh network
      --internal             Restrict external access to the network
      --ip-range strings     Allocate container ip from a sub-range
      --ipam-driver string   IP Address Management Driver (default "default")
      --ipam-opt map         Set IPAM driver specific options (default map[])
      --ipv6                 Enable IPv6 networking
      --label list           Set metadata on a network
  -o, --opt map              Set driver specific options (default map[])
      --scope string         Control the network's scope
      --subnet strings       Subnet in CIDR format that represents a network segment

create

概述

        create 命令用于创建一个新的容器网络。Docker 内置了 bridge(默认使用)和 overlay 两种驱动,分别支持主机和多主机场景。Docker 服务在启动后,会默认创建一个 bridge 类型的网桥 bridge。不同网络之间默认相互隔离。

命令

docker network create network_name

支持参数

  • -attachable[=false]:支持手动容器挂载
  • -aux-address=map[]:辅助的 IP 地址
  • -config-from="":从某个网络复制配置数据
  • -config-only[=false]:启用仅可配置模式
  • -d,-driver="bridge":网络驱动类型,如 bridge 或 overlay
  • -gateway=[]:网关地址
  • -ingress[=false]:创建一个 Swarm 可路由的网状网络用于负载均衡,可将对某个服务的请求自动转发给一个合适的副本
  • -internal[=false]:内部模式,禁止外部对所创建网络的访问;
  • -ip-range=[]:指定分配 IP 地址范围
  • -ipam-driver="default":IP地址管理的插件类型
  • -ipam-opt=map[]:IP地址管理插件的选项
  • -ipv6[=false]:支持IPv6地址
  • -label value:为网络添加元标签信息
  • -o,-opt=map[]:网络驱动所支持的选项
  • -scope="":指定网络范围
  • -subnet=[]:网络地址段,CIDR 格式,如 172.17.0.0、16

connect

概述

        connect 命令将一个容器连接到一个已存在的网络上。连接到网络上的容器可以跟同一网络中其他容器互通,同一个容器可以同时接入多个网络。也可以在执行 docker run 命令时候通过 -net 参数指定容器启动后自动接入的网络。

命令

docker network connect network_name mysql

支持参数

  • -alias=[]:为容器添加一个别名,此别名仅在所添加网络上可见
  • -ip="":指定IP地址,需要注意不能跟已接入的容器地址冲突
  • -ip6="":指定 IPv6 地址
  • -link value:添加连接到另外一个容器
  • -link-local-ip=[]:为容器添加一个链接地址

disconnect

命令

docker network disconnect network_name mysql

支持参数

  • -f 强制把容器从网络上移除

inspect

概述

命令

docker network inspect network_name

支持参数

  • -f,-format="":给定一个 Golang 模板字符串,对输出结果进行格式化,如只查看地址配置可以用 -f '{ {.IPAM.Config}}'

示例

查看容器IP

docker inspect -f '{
   
   {.NetworkSettings.IPAddress}}' container_name

输出是空的说明没有配置IP地址。 

查看地址配置

​docker network inspect network_name -f '{
   
   {.IPAM.Config}}'

获取所有容器名称及其IP地址

docker inspect -f '{
   
   {.Name}} - {
   
   {.NetworkSettings.IPAddress }}' $(docker ps -aq)

使用docker-compose命令将是:

docker inspect -f '{
   
   {.Name}} - {
   
   {range .NetworkSettings.Networks}}{
   
   {.IPAddress}}{
   
   {end}}' $(docker ps -aq)

ls

docker network ls

prune

docker network prune

rm

docker network rm network_name

注意

在删除之前,要先通过docker disconnect命令断开此网络与其他容器的连接。

猜你喜欢

转载自blog.csdn.net/feiying0canglang/article/details/127956187