docker network create命令

2023-09-21 16:10:37

docker network create命令用于创建一个新的网络连接。 DRIVER接受内置网络驱动程序的桥接或覆盖。如果安装了第三方或自己的自定义网络驱动程序,则可以在此处指定DRIVER。 如果不指定--driver选项,该命令将为您自动创建一个桥接网络。 当安装Docker Engine时,会自动创建桥接网络。 该网络对应于Engine传统依赖的docker0网桥。 当启动使用docker run运行新容器时,它将自动连接到此桥接网络。不能删除此默认网桥,但可以使用network create命令创建新的网络。 

$ docker network create -d bridge my-bridge-network

准备覆盖网络后,只需在群集中选择一个Docker主机,并发出以下内容创建网络:

$ docker network create -d overlay my-multihost-network

用法

docker network create [OPTIONS] NETWORK

选项

名称,简写默认说明
--attachablefalse启用手动容器安装
--aux-addressmap[]网络驱动程序使用的辅助IPv4或IPv6地址
--driver, -dbridge驱动程序管理网络
--gateway用于主子网的IPv4或IPv6网关
--internalfalse限制对网络的外部访问
--ip-range从子范围分配容器ip
--ipam-driverdefaultIP地址管理驱动程序
--ipam-optmap[]设置IPAM驱动程序的具体选项
--ipv6false启用IPv6网络
--label在网络上设置元数据
--opt, -omap[]设置驱动程序特定选项
--subnet表示网段的CIDR格式的子网

示例

连接容器网络

启动容器时,使用--network标志将其连接到网络。 此示例将busybox容器添加到mynet网络:

$ docker run -itd --network=mynet busybox

如果要在容器运行后将容器添加到网络,请使用docker network connect子命令。

指定高级选项

创建网络时,引擎默认为网络创建一个不重叠的子网。 该子网不是现有网络的细分。 它纯粹用于IP寻址目的。可以覆盖此默认值,并使用--subnet选项直接指定子网络值。 在桥接网络上,只能创建单个子网:

$ docker network create --driver=bridge --subnet=192.168.0.0/16 br0

另外,还可以指定--gateway --ip-range--aux-address选项。

$ docker network create \
  --driver=bridge \
  --subnet=172.28.0.0/16 \
  --ip-range=172.28.5.0/24 \
  --gateway=172.28.5.254 \
  br0

如果省略--gateway标志,引擎将从首选池中选择一个。对于覆盖网络和支持它的网络驱动程序插件,可以创建多个子网络。

$ docker network create -d overlay \
  --subnet=192.168.0.0/16 \
  --subnet=192.170.0.0/16 \
  --gateway=192.168.0.100 \
  --gateway=192.170.0.100 \
  --ip-range=192.168.1.0/24 \
  --aux-address="my-router=192.168.1.5" --aux-address="my-switch=192.168.1.6" \
  --aux-address="my-printer=192.170.1.5" --aux-address="my-nas=192.170.1.6" \
  my-multihost-network

确保子网不重叠。如果重叠的话网络创建失败,并且引擎会返回错误。

桥接驱动程序选项

创建自定义网络时,默认的网络驱动程序(即bridge)具有可以传递的其他选项。

例如,使用-o--opt选项在发布端口时指定IP地址绑定:

$ docker network create \
    -o "com.docker.network.bridge.host_binding_ipv4"="172.19.0.1" \
    simple-network

更多推荐

【学习笔记】C#基础 - 由C/C++衍生出来的面向对象的编程语言

一、程序结构1、基本语法usingSystem;//C#程序第一条语句都是usingSystem;//using关键字(可多个):在程序中包含命名空间namespaceRectangleApplication//namespace声明(可多个):包含一系列的类{classRectangle//class声明(可多个):

【个人笔记本】本地化部署 类chatgpt模型 详细流程

不推荐小白,环境配置比较复杂全部流程下载原始模型:Chinese-LLaMA-Alpaca-2linux部署llamacpp环境使用llamacpp将Chinese-LLaMA-Alpaca-2模型转换为gguf模型windows部署TextgenerationwebUI环境使用TextgenerationwebUI加

docker容器管理-实操命令

本单元主要是在docker镜像管理下进一步的培训学习文档。docker镜像管理-实操_忍冬行者的博客-CSDN博客四.容器管理1.运行一个容器dockercontainerrun--namec1-itnginx:latest/bin/sh2.后台运行一个容器dockercontainerrun--namec1-it-d

注入常考面试题总结

1.如何突破注入时字符被转义?宽字符注入、hex编码绕过(尝试利用ANSI字符代码变体来达到目的比如"号对应chr(34)是否成功取决于他本身程序是否也做了过滤.)Chr(34),由ASCII码生成字符,34就是双引号的ASCII码,Chr(34)等价于字符"(双引号)2.如何找出网站路径1.通过报错'和随便打点字母2

ubuntu 20.04 创建elasticsearch 7.x cluster

方式一直接固定主节点准备两台20.04的ubuntu服务器在每台服务器上安装elasticsearchsudoaptinstallopenjdk-11-jdkwget-qO-https://artifacts.elastic.co/GPG-KEY-elasticsearch|sudoapt-keyadd-sudoapt

软件设计师笔记系列(二)

😀前言在计算机科学的世界里,程序设计语言是一个核心组成部分,它不仅仅是计算机和程序员之间的交流桥梁,更是实现各种软件和应用的基石。理解程序设计语言的基本概念和原理是每一个aspiring程序员和计算机科学学生的必修课程。.在本章中,我们将深入探讨程序设计语言的基本概念,包括解释器和编译器的工作原理,函数的定义和调用方

使用凌鲨管理本地仓库

GIT是一种分布式版本控制系统,它允许开发人员在不依赖于中央服务器的情况下进行代码管理和协作。GIT在处理大型项目和复杂的版本历史方面表现出色,提供了强大的分支和合并功能,使得开发团队可以更高效地进行软件开发和代码维护。管理本地GIT仓库添加本地仓库设置远程仓库令牌设置远程仓库令牌可以方便的查看工单等数据。目前我们支持

嵌入式Linux驱动开发(I2C专题)(三)

无需编写驱动直接访问设备_I2C-Tools介绍参考资料:Linux驱动程序:drivers/i2c/i2c-dev.cI2C-Tools-4.2:https://mirrors.edge.kernel.org/pub/software/utils/i2c-tools/AP3216C:gitclonehttps://e

Linux学习第12天:基于API函数的字符设备驱动开发:一字一符总见情

本节学习的内容主要为基于LinuxAPI函数的字符设备驱动的开发,还包括在驱动模块加载的时候如何自动创建设备节点。总结的脑图如下:一、驱动原理1.分配和释放设备号申请设备号函数:intalloc_chrdev_region(dev_t*dev,unsignedbaseminor,unsignedcount,constc

解决hadoop使用put上传报错问题

hadoop使用put上传报错WARNhdfs.DataStreamer:DataStreamerExceptionorg.apache.hadoop.ipc.RemoteException(java.io.IOException):File/input/yxqzdata.COPYINGcouldonlyberepli

数据解析之Xpath解析(超详细定位)

目录​编辑前言一.Xpath介绍1.基本介绍2.HTML树状结构图2.节点之间的关系Xpath中的绝对路径与相对路径绝对路径相对路径二.Xpath的语法介绍基本定位语法1.元素属性定位2.层级属性结合定位3.使用谓语定位4.使用逻辑运算符定位5.使用文本定位6.使用部分函数定位三.Xpath语法验证在开发者工具的Ele

热文推荐