docker - 部署支持 IPv6 的 docker 私有注册表
问题描述
我正在尝试部署一个支持 IPv6 的私有 docker 注册表。我按照此处的步骤定义了我的 IPv6 地址。
码头工人-compose.yml
version: '2.1'
services:
registry:
restart: always
image: registry:2
ports:
- "5000:5000"
environment:
REGISTRY_AUTH: htpasswd
REGISTRY_AUTH_HTPASSWD_REALM: Registry
REGISTRY_AUTH_HTPASSWD_PATH: /auth/registry.password
REGISTRY_STORAGE_FILESYSTEM_ROOTDIRECTORY: /data
volumes:
- ./auth:/auth
- ./data:/data
networks:
dock_net:
ipv6_address: 2001:db8::10
networks:
dock_net:
enable_ipv6: true
driver: bridge
ipam:
driver: default
config:
- subnet: 2001:db8::/32
gateway: 2001:db8::1
据我所知,它“有效”。Adocker inspect
将全局 IP 地址显示为我定义的地址。我可以 ping 该地址,但如果我curl -u username:password http://[<ipv6 address>]:5000/v2/_catalog
在主机系统(托管存储库的那个)上发出问题,它会失败,并且没有路由到主机。
在设置过程中我错过了一个步骤吗?
解决方案
如果需要从 Internet 访问 - 你可以将它放在 cloudflare 后面,它可以从 ipv6 和 ipv4 访问。
推荐阅读
- react-native - deleteToken() 不会触发 onTokenRefresh() rnfirebase
- ruby-on-rails - Rails 6 / Administrate:安装 administrate-field-nested_has_many 时出现 Sprocket 错误
- java - 如何过滤具有前提条件的组?
- javascript - 如何在javascript中暂停和恢复函数执行
- r - 具有不同颜色的条形图
- php - PHP ssh2_fingerprint 在 Linux 上返回无效指纹
- java - 模板匹配java中的多个对象
- node.js - 如何仅从 mongodb 中的登录用户获取用户 ID 以在前端使用它?
- javascript - 测试 React 应用程序响应能力的请求
- python - 如何在 GitHub 上的公共存储库中隐藏 YouTube 数据 API 密钥?