在 Docker Compose 中为项目启用 IPv6 并可通过 IPv6 可访问
需求:在 Docker 环境下启用 IPv6,使基于 nginx 的容器服务可通过 IPv6 访问。 为网络启用 IPv6 添加 enable_ipv6: true 并配置 ipam。 设置子网前缀为 fd00:abcd::/64。 networks: my-network: driver: bridge enable_ipv6: true ipam: driver: default config: - subnet: "fd00:abcd::/64" 在项目前端的 nginx 配置中,增加 IPv6 监听: listen 80; listen [::]:80 ipv6only=on; enable_ipv6: true + ipam.subnet:告诉 Docker 网络为容器分配 IPv6 地址并(可选)使用指定前缀。 nginx 增加 listen [::]:80:容器内 nginx 需要监听 IPv6 地址,否则即使容器有 IPv6 也无法响应 IPv6 请求。 配置 Docker Engine 必须在 Docker 引擎启用 IPv6,否则容器不会拿到 IPv6 地址。在 /etc/docker/daemon.json 中加入: ...