问题描述

最近在根据一篇教程安装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)相关推荐

  1. 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 ...

  2. 解决Docker容器内安装chrome浏览器无法启动bug

    前言 之前有写过一个基于Ubuntu20.04 的Docker容器的可视化Dockerfile,当时默认火狐浏览器,今天要测试一个项目就run了一个可视化容器,但是我需要用到chrome浏览器,于是乎 ...

  3. docker容器内漏洞_如何在2020年发现和修复Docker容器漏洞

    docker容器内漏洞 Containerization allows engineering teams to create a sandbox environment in which to ru ...

  4. Docker - 容器内应用和外部非容器应用互相访问方法

    Docker搭建开发环境用的非常多,通常开发机器上既有容器形式的应用,又有本机跑着或者调试的程序,它们之间互相依赖,如何让它们之间通信顺畅,有时候是一个挺困难的事情.容器应用和容器外应用互相访问分为三 ...

  5. 解决Docker容器内访问宿主机MySQL数据库服务器的问题

    解决Docker容器内访问宿主机MySQL数据库服务器的问题 参考文章: (1)解决Docker容器内访问宿主机MySQL数据库服务器的问题 (2)https://www.cnblogs.com/ga ...

  6. 基于事件驱动架构构建微服务第10部分:在docker容器内运行单元测试

    原文链接:https://logcorner.com/building-microservices-through-event-driven-architecture-part11-run-unit- ...

  7. Docker容器内不能联网的6种解决方案

    全栈工程师开发手册 (作者:栾鹏) 架构系列文章 Docker容器内不能联网的6种解决方案 注:下面的方法是在容器内能ping通公网IP的解决方案,如果连公网IP都ping不通,那主机可能也上不了网( ...

  8. DOCKER容器内中文显示乱码

    在docker容器内使用Bash通过 ls 列取中文列表内容时,中文会显示为乱码,简单一步就可以解决此烦恼. 在创建容器时加入环境变量: LANG=C.UTF-8 命令行方式: docker run ...

  9. docker 容器内安装ps命令

    docker exec -it 793d8 /bin/sh 进入容器内, 使用 ps -ef | grep java  报了错: 问题出在docker 容器linux没有安装procps工具 在命令行 ...

最新文章

  1. 常见计算机问题 内存篇
  2. notepadpython插件_Notepad++插件Emmet和Python Script的安装
  3. PackStack安装OpenStack Pike
  4. Hotspot GC Root 对应调用链
  5. python3[进阶]8.对象引用、可变性和垃圾回收
  6. node.js初入手
  7. 自考计算机毕业论文答辩视频,过来人谈自考毕业论文答辩有感
  8. python3语法错误python_关于在python3.7当中的语法错误!
  9. 自定义Kettle数据库插件 1
  10. 【神经网络】RBF神经网络逼近任意连续非线性函数的Simulink仿真
  11. 40余个超好用的在线影视站点
  12. C语言:丹尼斯·里奇的不朽遗产
  13. 微信小程序自定义省市区下拉框
  14. 蓝牙芯片解决方案市场规模
  15. EAUML日拱一卒--序列图(Sequence Diagram)::生命周期
  16. 鸿蒙一青城的对联,8副写景色的对联,风景美如画,令人陶醉!
  17. ffmpeg批量转换flac为wav,m4a转换为wav,批量删除目录下某一后缀名文件,复制文件中有相同部分的文件
  18. 2048网页版游戏高分插件代码分享
  19. 玩转 Java8 Stream 流,常用方法,详细用法大合集!
  20. 内存颗粒和闪存颗粒的区别_闪存颗粒到底是何物?浅析闪存及制程

热门文章

  1. Log4j的快速入门
  2. Junit_@Before@After
  3. File类创建删除功能的方法
  4. Zookeeper的概述
  5. 什么是XSS攻击XSS攻击应用场景
  6. JDBC详解系列之流程
  7. ActiveMQ 消息持久化到Mysql数据库
  8. cfg桩设备型号_试桩、试验桩、工程桩是一回事吗?
  9. solr java api_solr java api
  10. Linux 下 Redis 安装教程