首页>软件资讯>常见问题

常见问题

彻底解决Docker无法使用IPv6网络

发布时间:2025-05-27 14:29:34人气:12

前言

开发Dify插件时,发现本地部署的Docker无法使用IPv6网络。


为方便测试,启动一个简单的ubuntu容器,docker-compose.yml如下:


services:

  ubuntu:

    image: ubuntu:22.04

    container_name: ubuntu

    command: /bin/bash

    environment:

      - TZ=Asia/Shanghai

    stdin_open: true

    tty: true

容器启动后,安装curl命令用于测试。


apt-get update

apt-get install curl

Docker访问IPv6网站报错截图:

Docker访问IPv6网站报错截图.jpg

WSL访问IPv6网站报错截图:

WSL访问IPv6网站报错截图.jpg

查看docker网络,显示IPv6是禁用的

查看docker网络.jpg

docker network inspect ubuntu_default



解决方案

解决步骤如下:


1. 设置WSL的networkingMode


修改C:Users<your_username>.wslconfig(如文件不存在则新建),设置networkingMode为mirrored


[wsl2]

networkingMode=mirrored


修改后重启windows。重启后,WSL可以访问IPv6网站了,但Docker容器还不行。

修改后代码.jpg

2. 设置Docker允许IPv6

打开Docker Desktop设置,在Docker Engine配置加上如下设置项:


  "default-network-opts": {

    "bridge": {

      "com.docker.network.enable_ipv6": "true"

    }

  }



点击"Apply & restart"重启Docker Engine。


3. 重建Docker容器

用如下命令重建容器:


docker compose down

docker compose up -d

查看docker网络,显示IPv6是启用的。


docker network inspect ubuntu_default



Docker容器中可以正常访问IPv6网络。


至此,问题得到解决。


#Docker  #IPv6网络不通  #Dify插件开发


如果您觉得本文对您有帮助,欢迎关注、点赞、转发、推荐



上一条:宝塔面板Docker模块全解析

下一条:一键部署docker环境MariaDB+Milvus+Attu+OpenWebUI