一、问题形容
最近工作须要对 fabric2 的源码进行革新,每次改完想要部署测试的时候,make docker 这个命令执行起来超级慢。找到这篇文章的读者应该都遇到与我雷同的问题,本文将剖析问题产生的起因并提出解决办法。
二、问题剖析
Fabric 的镜像是基于 Alpine(Alpine Linux 是一个面向平安,轻量级的基于 musl libc 与 busybox 我的项目的 Linux 发行版),Alpine 的包管理工具是 APK,Alpine 零碎默认源是国外,因而在以 Alpine 为根底创立的镜像容器中装置软件会很慢。比方:装置最耗时的是 ”installing gcc”,真的要等半天。
三、解决办法
针对上述问题的解决思路很简略:替换镜像容器的源。
本文将应用清华大学开源软件源,地址为:http://mirrors.tuna.tsinghua….,v3.11 是 Alpine 的版本号。
那如何 Fabric 镜像容器的源呢?具体步骤如下:
- 进入 Fabric 源码中的 images 目录,该目录下有 5 个子目录,每个目录蕴含一个 Dockerfile。如下图所示:
- 顺次批改每个 Dockerfile 文件,在对应的地位减少代码:
RUN echo -e http://mirrors.tuna.tsinghua.edu.cn/alpine/v3.11/main/ > /etc/apk/repositories
批改后的 Dockerfile 文件内容如下图所示:
tools/Dockerfile:
orderer/Dockerfile:
peer/Dockerfile:
ccenv/Dockerfile:
baseos/Dockerfile:
批改完这 5 个 Dockerfile 文件之后,在去 Fabric 源码根目录下执行:make docker,感觉像风一样快。
本文由博客群发一文多发等经营工具平台 OpenWrite 公布