首页 > 其他分享 >Docker引擎开启ipv6

Docker引擎开启ipv6

时间:2024-02-21 22:55:39浏览次数:23  
标签:docker IP ipv6 引擎 IPv6 Docker true 80

启用IPv6支持

在Docker容器中使用IPv6之前,您需要在Docker守护程序中启用IPv6支持。之后,您可以选择使用IPv4或IPv6(或两者都使用)与任何容器或网络。

IPv6仅在运行在Linux主机上的Docker守护程序中受支持。

注意

当使用IPv6时,我们建议您在守护程序配置中启用实验性的ip6tables参数。

创建IPv6网络

以下步骤将指导您如何创建一个使用IPv6的Docker网络。

编辑Docker守护程序的配置文件,该文件通常位于/etc/docker/daemon.json。配置以下参数: 

{  
  "experimental": true,  
  "ip6tables": true  
}

ip6tables启用了额外的IPv6数据包过滤规则,提供了网络隔离和端口映射。此参数要求experimental设置为true`。

保存配置文件。

重启Docker守护程序,以使更改生效。

sudo systemctl restart docker

创建新的IPv6网络

使用docker network create命令创建IPv6网络:

docker network create --ipv6 --subnet 2001:0DB8::/112 ip6net

使用Docker Compose文件创建网络:

networks:  
  ip6net:  
    enable_ipv6: true  
    ipam:  
      config:  
        - subnet: 2001:0DB8::/112

现在,您可以运行附加到ip6net网络的容器。

docker run --rm --network ip6net -p 80:80 traefik/whoami

这将在IPv6和IPv4上都发布端口80。您可以通过运行curl并连接到IPv6回环地址上的端口80来验证IPv6连接:

curl http://[::1]:80

输出:

Hostname: ea1cfde18196  
IP: 127.0.0.1  
IP: ::1  
IP: 172.17.0.2  
IP: fe80::42:acff:fe11:2  
RemoteAddr: [fe80::42:acff:fe11:2]:54890  
GET / HTTP/1.1  
Host: [::1]  
User-Agent: curl/8.1.2  
Accept: */*

在默认桥接网络中使用IPv6

以下步骤指导您如何在默认桥接网络上使用IPv6。

编辑Docker守护程序的配置文件,该文件通常位于/etc/docker/daemon.json。配置以下参数:

{  
  "ipv6": true,  
  "fixed-cidr-v6": "2001:db8:1::/64",  
  "experimental": true,  
  "ip6tables": true  
}
  • ipv6:在默认网络上启用IPv6网络。
  • fixed-cidr-v6:为默认桥接网络分配一个子网,启用动态IPv6地址分配。
  • experimental:启用实验性功能。
  • ip6tables:启用额外的IPv6数据包过滤规则,提供网络隔离和端口映射。此参数要求experimental设置为true

保存配置文件。

重启Docker守护程序以使更改生效。

sudo systemctl restart docker

现在,您可以在默认桥接网络上运行容器。

docker run --rm -p 80:80 traefik/whoami

这将在IPv6和IPv4上都发布端口80。您可以通过向IPv6回环地址上的端口80发送请求来验证IPv6连接:

curl http://[::1]:80
Hostname: ea1cfde18196
IP: 127.0.0.1
IP: ::1
IP: 172.17.0.2
IP: fe80::42:acff:fe11:2
RemoteAddr: [fe80::42:acff:fe11:2]:54890
GET / HTTP/1.1
Host: [::1]
User-Agent: curl/8.1.2
Accept: */*

 

标签:docker,IP,ipv6,引擎,IPv6,Docker,true,80
From: https://www.cnblogs.com/longan-wang/p/18026356

相关文章

  • Dockerfile 使用
    dockerfile编写详见:https://www.cnblogs.com/liyuanhong/articles/13265836.html使用dockerfile创建一个node应用的镜像编写一个app.js的文件,代码如下:varhttp=require("http");http.createServer(function(request,response){response.writeHead(200,{"Content-Typ......
  • docker 手动安装部署jar包
    创建Dockerfile文件例:FROMjdk:11MAINTAINERtfinfoADDems-basic.jar/ems-gb.jarENTRYPOINT["java","-XX:+UseG1GC","-XX:+TieredCompilation","-Dspring.profiles.active=gb-dev-mysql","-Dspring.group=EMS_GB_GROUP"......
  • Docker Exec 命令详解与实践指南
    简介DockerExec是Docker中一个非常有用的命令,它允许您在正在运行的容器内部执行命令。这对于调试、管理和与容器进行交互非常有帮助。在本篇文章中,我们将深入探讨DockerExec命令的使用方法,并提供一些实用的示例,旨在帮助初学者更好地理解和运用这一功能。什么是DockerE......
  • Docker安装MySql5.7
    1:在cmd中执行命令2:先查看mysql 3.拉去mysql 4.查看镜像 5.设置账号密码 这条命令是用来在Docker中启动一个MySQL5.7数据库容器的命令。让我来解释一下:dockerrun:这部分表示我们要运行一个新的Docker容器。--namemysql5.7:这个部分指定了我们要创建的容器......
  • Unity引擎2D游戏开发,场景互动的逻辑实现
    创建接口由于所有可互动的物体都会有一个共通的属性,即“互动”的处理。因此,新建一个接口,让所有可互动的物体都实现这个接口内的互动处理方法新建接口创建一个处理互动逻辑的抽象方法publicinterfaceIInteractable{voidTriggerAction();}创建处理宝箱交互逻辑的脚......
  • Docker 运行图形界面版 aTrust
    1、Docker、Docker-Compose安装https://www.cnblogs.com/a120608yby/p/9883175.htmlhttps://www.cnblogs.com/a120608yby/p/14582853.html2、服务Docker-Compose配置#catdocker-compose.ymlversion:'3'services:atrust:image:hagb/docker-atrustc......
  • 2024年十大磁力搜索引擎排名下载教程-JAVA
    磁力技术相对比较顶尖的几大磁力厂商推荐使用磁力导航  www.okeyl.com随着互联网的发展,搜索引擎已经成为人们日常生活中必不可少的工具之一。每当我们想查找信息时,我们都会去使用搜索引擎。然而,在众多的搜索引擎中,哪些才是真正有用的呢?下面我们就来探讨一下搜索引擎前十排名。......
  • [技术选型与调研] 流程引擎/工作流引擎:Activiti、Flowable、Camunda
    1概述:流程与流程引擎低代码平台、办公自动化(OA)、BPM平台、工作流系统均需要流程引擎功能【工作流引擎的三大功能】1)验证当前过程状态:在给定当前状态的情况下,检查是否有效执行任务。2)确定用户权限:检查是否允许当前用户执行任务。3)执行条件脚本:经过前两个步骤后,工作流引擎......
  • Unity引擎2D游戏开发,切换场景与人物可互动标识总结
    切换场景可以通过新建一个持久化地场景,将所有常驻元素放置进此场景里面,然后再将进入的场景加载(Loud)在Hierarchy窗口中。如果切换了其他某一个场景,再将离开的场景停用(Unload),进入的场景加载(Loud),即可实现。创建持久化场景,移入Hierarchy将所有永恒不变,常驻的元素移入此创建的持久......
  • Linux下使用docker部署vue项目
    通过nginx镜像部署关于前端vue项目部署:使用npm打包创建nginx容器dockerrun-d--nameadmin_portal-p9091:80nginx将dist目录下的所有文件拷贝到容器的/usr/share/nginx/html目录下,这个是html文件的默认读取路径dockercp./admin_portal:/usr/share/nginx/html/......