docker进入容器里面很慢时什么原因

docker进入容器里面很慢时什么原因?你所使用的宿主机操作系统发行版,和容器中基础镜像的发行版很有可能存在区别。本地的发行版软件源一般会是国内地址,而官方镜像中的源一般都是国外的源。

由于国内网络的原因,连接国外的源很有可能非常慢。因此,容器内的基础镜像中使用国外源的话,在容器在国内运行,apt-get update 会非常慢。

还有一点需要注意:容器的DNS问题。一旦运行docker daemon或者docker run时没有指定dns的,并且宿主机的默认dns为127.0.0.1,那么docker daemon会自动给容器配置dns为8.8.4.4和8.8.8.8,而这两个DNS地址在国内使用时不是很稳定,因此,也存在域名解析缓慢甚至被阻的情况。

解决docker容器里网络请求慢的问题

经过抓包测试等分析,发现网络请求慢,主要发生在dns解析中,所以主要采取dns优化。

如果请求的是自己内网的api, 可以直接修改/etc/hosts文件,如果是外网的请求可以通过更改/etc/resolv.conf里的nameserver实现。

docker容器肯定不是直接通过修改文件实现的,可以通过run的命令实现:

# 添加host
docker run --name app --add-host='api.embbnux.com:10.98.10.98' -d ubuntu
# 指定dns server
docker run --name app --dns=223.5.5.5 --dns=8.8.8.8 -d ubuntu

这样在docker容器里dns解析阶段的时间就被加速了

西部数码容器云产品是通过docker技术,在集群服务器上部署容器服务实现,功能强大、简单易用,拥有上万linux镜像,灵活轻量,高性价比的容器云产品链接 https://www.west.cn/paas/container/

赞(0)
声明:本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8306;邮箱:fanjiao@west.cn。本站原创内容未经允许不得转载,或转载时需注明出处:西部数码知识库 » docker进入容器里面很慢时什么原因

登录

找回密码

注册