轻量级linux镜像,轻量级发行版 Alpine Linux 介绍

Alpine Linux 操作系统是由社区开发的,面向安全的轻型 Linux 发行版,它和其他常见的 Linux 发行版不同。Alpine 采用了 musl libc 和 busybox 以减小系统体积和运行时的资源消耗,功能上要比 busybox 完善的多,因此得到开源社区越来越多的青睐。

8a17e61580551a3d3f2232dff5df296a.png

在保持瘦身的同时,Alpine 提供了自己的包管理工具 apk,可以在官方网站上查询包信息,也可以通过类似 apt 和 yum 的方式,在命令行查询或安装软件。

Alpine 支持广泛的场景,它特别为资深/重度Linux用户而优化,关注安全,性能和资源利用率,是一个优秀的可适用于生产环境的基础系统。

Alpine Docker 镜像继承了 Alpine Linux 发行版的这些优势。相比于其他 Docker 镜像,Alpine 只有仅仅 5 MB 大小,并且拥有很友好的包管理机制。

Docker 官方推荐使用 Alpine 替代 Ubuntu 做为容器的基础镜像。这样会带来众多好处,镜像下载速度更快,镜像安全性提升,主机之间的切换更方便,占用更少磁盘空间等。

下表是官方容器镜像的大小对比:

REPOSITORY TAG IMAGE ID VIRTUAL SIZE

alpine latest 4e38e38c8ce0 4.799 MB

debian latest 4d6ce913b130 84.98 MB

ubuntu latest b39b81afc8ca 188.3 MB

centos latest 8efe422e6104 210 MB

获取并使用官方镜像

由于镜像很小,下载时间往往很短,读者不妨测试直接用 docker run 指令运行一个 Alpine 容器,并指定运行的 Linux 指令所需要的时间,

$ time docker run alpine echo debian.cn

Unable to find image 'alpine:latest' locally

latest: Pulling from library/alpine

c9b1b535fdd9: Pull complete

Digest: sha256:ab00606a42621fb68f2ed6ad3c88be54397f981a7b70a79db3d1172b11c4367d

Status: Downloaded newer image for alpine:latest

debian.cn

real 0m5.315s

user 0m0.028s

sys 0m0.019s

迁移至 Alpine 基础镜像

目前大部分 Docker 官方镜像都已经支持 Alpine 作为基础镜像,可以很容易进行迁移。例如:

ubuntu/debian -> alpine

python:2.7 -> python:2.7-alpine

ruby:2.3 -> ruby:2.3-alpine

另外,如果使用 Alpine 镜像替换 Ubuntu 基础镜像,安装软件包时需要用 apk 包管理器替换 apt 工具,如,

$ apk add --no-cache

Alpine 中软件安装包的名字可能会与其他发行版有所不同,可以官方网站上搜索并确定安装包名称。如果需要的安装包不在主索引内,但是在测试或社区索引中。那么可以用以下方法访问这些包,

$ echo "http://dl-4.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories

$ apk --update add --no-cache

参考资源

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值