docker容器内无法下载到alpine的资源,报错network error (check Internet connection and firewall)
问题描述
最近在根据一篇教程安装openwhisk,前面的过程都比较顺利,但到了使用docker来构建镜像的时候,由于项目中的dockerfile文件里用到了https://alpine.global.ssl.fastly.net/alpine/v3.12/main
这个地址,而这个地址在国内无法正常访问,报错如下:
走过的弯路
在这里卡了很久,先尝试在虚拟机里设置代理,但到了容器里也还是无法访问。
还试过先在主机下载好该文件,却不知道应该传到容器里哪个目录下
解决方法
最后我的解决办法是:
发现卡住的地方其实就是dockerfile中的step5/11
后面跟着的是一个地址,于是我先进入到容器内部查看里面内容
# 先查看 容器id
root@master-k8s:~/openwhisk# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS ES
edef7bd05976 ebdcb683e9b7 "/bin/sh -c 'apk add…" 12 minutes ago Exited (3) 53 seconds ago cious_ardinghelli
# 启动容器
/etc/apk # vi resproot@master-k8s:~/openwhisk# docker start edef7bd05976
edef7bd05976
# 进入容器内部
root@master-k8s:~/openwhisk# docker exec -it edef7bd05976 sh
/ # cd /etc/apk
/etc/apk # vi repositories
发现是这样的,于是我就明白了,就是因为访问不到这两个地址所以报错,只要我能把这个地址换成我能访问的应该就可以了。
于是我就去搜索了一下找到这篇文章,在里面发现了中科大的镜像地址
http://mirrors.ustc.edu.cn/alpine/v3.12/main
http://mirrors.ustc.edu.cn/alpine/v3.12/community
然后进入到项目中的dockerfile文件,把它原来的地址替换一下
RUN sed -i 's/http\:\/\/dl-cdn.alpinelinux.org/https\:\/\/alpine.global.ssl.fastly.net/g' /etc/apk/repositories
改成
RUN sed -i 's/http\:\/\/dl-cdn.alpinelinux.org/https\:\/\/mirrors.ustc.edu.cn/g' /etc/apk/repositories
保存,再重新运行,这一步就不再报错了
总结
因为没用过alpine这个东西,所以不知道可以换源,搞了好久。被网络问题卡住就很心塞。
但是始终没有能让容器内访问到外国网站,估计后面还是会遇到类似问题,所以要继续想想办法。
docker容器内无法下载到alpine的资源,报错network error (check Internet connection and firewall)相关推荐
- apline更新下载软件报错ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.12/main: network error (check Internet
1.在使用apline安装软件是报ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.12/main: network error (check Intern ...
- 解决Docker容器内安装chrome浏览器无法启动bug
前言 之前有写过一个基于Ubuntu20.04 的Docker容器的可视化Dockerfile,当时默认火狐浏览器,今天要测试一个项目就run了一个可视化容器,但是我需要用到chrome浏览器,于是乎 ...
- docker容器内漏洞_如何在2020年发现和修复Docker容器漏洞
docker容器内漏洞 Containerization allows engineering teams to create a sandbox environment in which to ru ...
- Docker - 容器内应用和外部非容器应用互相访问方法
Docker搭建开发环境用的非常多,通常开发机器上既有容器形式的应用,又有本机跑着或者调试的程序,它们之间互相依赖,如何让它们之间通信顺畅,有时候是一个挺困难的事情.容器应用和容器外应用互相访问分为三 ...
- 解决Docker容器内访问宿主机MySQL数据库服务器的问题
解决Docker容器内访问宿主机MySQL数据库服务器的问题 参考文章: (1)解决Docker容器内访问宿主机MySQL数据库服务器的问题 (2)https://www.cnblogs.com/ga ...
- 基于事件驱动架构构建微服务第10部分:在docker容器内运行单元测试
原文链接:https://logcorner.com/building-microservices-through-event-driven-architecture-part11-run-unit- ...
- Docker容器内不能联网的6种解决方案
全栈工程师开发手册 (作者:栾鹏) 架构系列文章 Docker容器内不能联网的6种解决方案 注:下面的方法是在容器内能ping通公网IP的解决方案,如果连公网IP都ping不通,那主机可能也上不了网( ...
- DOCKER容器内中文显示乱码
在docker容器内使用Bash通过 ls 列取中文列表内容时,中文会显示为乱码,简单一步就可以解决此烦恼. 在创建容器时加入环境变量: LANG=C.UTF-8 命令行方式: docker run ...
- docker 容器内安装ps命令
docker exec -it 793d8 /bin/sh 进入容器内, 使用 ps -ef | grep java 报了错: 问题出在docker 容器linux没有安装procps工具 在命令行 ...
最新文章
- 常见计算机问题 内存篇
- notepadpython插件_Notepad++插件Emmet和Python Script的安装
- PackStack安装OpenStack Pike
- Hotspot GC Root 对应调用链
- python3[进阶]8.对象引用、可变性和垃圾回收
- node.js初入手
- 自考计算机毕业论文答辩视频,过来人谈自考毕业论文答辩有感
- python3语法错误python_关于在python3.7当中的语法错误!
- 自定义Kettle数据库插件 1
- 【神经网络】RBF神经网络逼近任意连续非线性函数的Simulink仿真
- 40余个超好用的在线影视站点
- C语言:丹尼斯·里奇的不朽遗产
- 微信小程序自定义省市区下拉框
- 蓝牙芯片解决方案市场规模
- EAUML日拱一卒--序列图(Sequence Diagram)::生命周期
- 鸿蒙一青城的对联,8副写景色的对联,风景美如画,令人陶醉!
- ffmpeg批量转换flac为wav,m4a转换为wav,批量删除目录下某一后缀名文件,复制文件中有相同部分的文件
- 2048网页版游戏高分插件代码分享
- 玩转 Java8 Stream 流,常用方法,详细用法大合集!
- 内存颗粒和闪存颗粒的区别_闪存颗粒到底是何物?浅析闪存及制程