本地Docker容器中Spring Boot配置服务器无法连接GitLab求助
解决Docker容器中Spring Boot配置服务器无法解析GitLab域名的问题
以下是针对gitlab.com: Temporary failure in name resolution错误的修复方案:
配置Docker守护进程全局DNS
编辑Docker的daemon配置文件(通常路径为/etc/docker/daemon.json),添加公共DNS服务器:{ "dns": ["8.8.8.8", "1.1.1.1"] }保存后重启Docker服务:
sudo systemctl restart docker重新启动容器:
docker-compose up -d在docker-compose.yml中为容器指定DNS
修改服务配置,直接为目标容器设置DNS服务器:networks: private-net: ipam: driver: default config: - subnet: 192.168.0.0/16 public-net: ipam: driver: default config: - subnet: 172.16.0.0/16 services: test-config-server: image: ${DOCKER_REGISTRY_ROOT}/com/rohila/api/vcp/test-config-server:develop networks: - private-net ports: - "8888:8888" dns: - 8.8.8.8 - 1.1.1.1重启容器使配置生效:
docker-compose down && docker-compose up -d验证容器内DNS解析能力
进入容器内部测试域名解析:docker exec -it <容器ID或名称> /bin/bash ping gitlab.com若直接ping失败,指定公共DNS服务器测试解析:
nslookup gitlab.com 8.8.8.8若能返回IP说明容器DNS配置异常;若仍失败,优先排查主机网络连通性。
检查本地主机网络与DNS
在主机上执行ping gitlab.com,确认主机本身可正常解析并访问GitLab。若主机也无法解析,将本地DNS更换为公共DNS(如8.8.8.8)。重建Docker自定义网络
若自定义网络存在配置异常,删除后重建:docker-compose down docker network rm private-net public-net docker-compose up -d
内容的提问来源于stack exchange,提问作者Tarun Rohila
相关产品推荐
相关产品推荐

