weaveworks/weaveexecWeaveworks 镜像专注于提供容器网络解决方案,旨在简化容器间通信,支持跨主机容器部署,帮助用户构建、管理和扩展基于容器的微服务应用。该镜像集成了Weave Net等核心技术,提供自动化网络编排能力,降低容器网络配置复杂度。
在单主机或集群中的第一台主机上启动Weave网络服务:
bashdocker run -d \ --name=weave \ --privileged \ --net=host \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /weave:/weave \ weaveworks/weave:latest launch
在其他主机上加入已创建的Weave网络集群(替换<现有集群主机IP>为实际IP):
bashdocker run -d \ --name=weave \ --privileged \ --net=host \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /weave:/weave \ weaveworks/weave:latest launch <现有集群主机IP>
启动容器时通过--net=weave参数接入Weave网络:
bashdocker run --rm --net=weave -it --name=service-a alpine sh
此时,其他接入Weave网络的容器可通过容器名(如service-a)直接通信。
| 环境变量名 | 描述 | 默认值 |
|---|---|---|
| WEAVE_PASSWORD | 网络加密密码(启用加密通信) | 未设置(不加密) |
| WEAVE_DNS_DOMAIN | 自定义DNS域名 | weave.local |
| WEAVE_MTU | 网络MTU值(调整数据包大小) | 1410 |
| WEAVE_IGNORE_CIDRS | 排除在网络路由外的CIDR范围 | 无 |
在两个接入Weave网络的容器间测试通信:
bash# 在主机A启动容器service-a docker run --net=weave -d --name=service-a nginx # 在主机B启动容器并ping service-a docker run --net=weave --rm alpine ping -c 3 service-a
--privileged权限以配置主机网络接口WEAVE_PASSWORD启用加密通信,防止数据传输泄露更多详细文档请访问 Weaveworks 官方网站。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务