..
docker打包镜像的注意事项
在docker打包镜像的时候,我一般是使用 alpine 作为底包,而不是 ubuntu 更加不是 centos ,因为这个两个基础镜像的文件大小已经非常大了,不利于分发和快速部署。我们在为 alpine 安装工具的时候经常会遇到安装过程中卡主的情况,这是因为从 http://dl-cdn.alpinelinux.org/alpine/ 这个仓库下载包会非常缓慢。使用阿里云提供的镜像加速服务可以绕过这个坑。如下:
FROM fluent/fluentd:v0.12-onbuild
# backup the orign repo and use aliyun mirror instead
RUN { \
echo "http://mirrors.aliyun.com/alpine/v3.7/main"; \
echo "http://mirrors.aliyun.com/alpine/v3.7/community"; \
} > /etc/apk/repositories
RUN apk add --update --virtual .build-deps \
sudo build-base ruby-dev \
&& sudo gem install \
fluent-plugin-elasticsearch \
&& sudo gem sources --clear-all \
&& apk del .build-deps \
&& rm -rf /var/cache/apk/* \
/home/fluent/.gem/ruby/2.3.0/cache/*.gem
以上是我编译 fluentd 的镜像时候用的 Dockerfile 文件。这行代码就是添加镜像加入的作用
RUN { \
echo "http://mirrors.aliyun.com/alpine/v3.7/main"; \
echo "http://mirrors.aliyun.com/alpine/v3.7/community"; \
} > /etc/apk/repositories
注意: v3.7这个版本是可以修改的。