Docker镜像制作常用官方基础系统镜像的选择
Posted 白-胖-子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker镜像制作常用官方基础系统镜像的选择相关的知识,希望对你有一定的参考价值。
Docker 镜像
为了满足业务需求,我们通常需要基于官方Linux系统镜像制作私有镜像
选择合适的的Docker官方基础Linux系统镜像成为了首先需要考虑的事情
- Docker镜像是只读的docker容器模板,封装着启动docker容器所需的文件系统结构和系统内部环境
- Docker镜像是启动docker容器的基础,运行容器必须在相应的docker基础至上
- 基于同一个docker镜像可以启动多个不同的docker容器
配置镜像仓库加速
- 官方镜像仓库在国外,因为你懂的伟大的火墙,所以慢得很
- 配置国内镜像仓库加速
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://9916w1ow.mirror.aliyuncs.com","https://reg-mirror.qiniu.com/","https://8otyy3fq.mirror.aliyuncs.com"]
}
EOF
常用docker官方镜像
Ubuntu
- 每两年的 4 ⽉份,都会推出⼀个⻓期⽀持版本(LTS),其⽀持期⻓达五年,
- ⽽⾮ LTS 版本的⽀持期通常只有半年。
- 我们在选择Ubuntu发行版本时要选择开头是偶数且后缀为04的版本,例如16.04,18.04,20.04,22.04
docker pull ubuntu:18.04
docker pull ubuntu:20.04
root@u18a:~# docker pull ubuntu:18.04
18.04: Pulling from library/ubuntu
e7ae86ffe2df: Pull complete
Digest: sha256:3b8692dc4474d4f6043fae285676699361792ce1828e22b1b57367b5c05457e3
Status: Downloaded newer image for ubuntu:18.04
docker.io/library/ubuntu:18.04
root@u18a:~# docker pull ubuntu:20.04
20.04: Pulling from library/ubuntu
a31c7b29f4ad: Pull complete
Digest: sha256:b3e2e47d016c08b3396b5ebe06ab0b711c34e7f37b98c9d37abe794b71cea0a2
Status: Downloaded newer image for ubuntu:20.04
docker.io/library/ubuntu:20.04
root@u18a:~# docker images | grep ubuntu
ubuntu 20.04 c29284518f49 8 days ago 72.8MB
ubuntu 18.04 fbf60236a8e3 8 days ago 63.1MB
CentOS
- 2020年12月8日IBM宣布将惯例支持到2029年CentOS 8,提前在2年内就终结,CentOS已死
- 生产环境我们常用CentOS6、7、8的最新稳定版,例如:8.3.2011,7.9.2009,6.10
docker pull centos:centos8.3.2011
docker pull centos:centos7.9.2009
docker pull centos:centos6.10
root@u18a:~# docker pull centos:centos7.9.2009
centos7.9.2009: Pulling from library/centos
2d473b07cdd5: Pull complete
Digest: sha256:0f4ec88e21daf75124b8a9e5ca03c37a5e937e0e108a255d890492430789b60e
Status: Downloaded newer image for centos:centos7.9.2009
docker.io/library/centos:centos7.9.2009
root@u18a:~# docker pull centos:centos8.3.2011
centos8.3.2011: Pulling from library/centos
7a0437f04f83: Pull complete
Digest: sha256:5528e8b1b1719d34604c87e11dcd1c0a20bedf46e83b5632cdeac91b8c04efc1
Status: Downloaded newer image for centos:centos8.3.2011
docker.io/library/centos:centos8.3.2011
root@u18a:~# docker images | grep centos
centos centos8.3.2011 300e315adb2f 7 months ago 209MB
centos centos7.9.2009 8652b9f0cb4c 8 months ago 204MB
Debian
- Debian作为适合于服务器的操作系统,它比Ubuntu要稳定得多。
- debian整个系统基础核心非常小,不仅稳定,而且占用硬盘空间小,占用内存小。
- debian本身就很小,当作容器时再刨除了内核就更小了
- Debian 大概2年发布一次新稳定版。稳定发行版本有三年的完整支持以及额外两年的长期支持。
- 目前常用的Debian版本有:bullseye,buster,stretch,
Debian 11("bullseye") — 即将上位的"稳定(stable)"版 2021
Debian 10("buster") — 当前的"稳定(stable)"版 2019
Debian 9("stretch") — "旧的稳定(oldstable)"版,现有长期支持 2017
Debian 8("jessie") — "更旧的稳定(oldoldstable)"版,马上就淘汰了 2015
docker pull debian:bullseye
docker pull debian:buster
docker pull debian:stretch
Alpine
- Alpine: 一个面向安全的轻型 Linux 发行版。它不同于通常 Linux 发行版,
- Alpine 采用了 musllibc 和 busybox 以减小系统的体积和运行时资源消耗,但功能上比 busybox 又完善的多,只有5M左右大小
- 目前 Docker 官方已开始推荐使用 Alpine 替代之前的 Ubuntu 做为基础镜像环境。
- 使用 Alpine做为基础镜像环境,下载速度加快,镜像安全性提高,主机之间的切换更便捷,占用更少磁盘空间。
- Alpine Linux每年 5 月和 11 月更新小版本(Branch)。稳定版支持 2 年,社区社区版支持直到下一个稳定版本。
- 最新大版本v3.0(2014-06-04)发布至今已经到了v3.14(2021-06-15)
- 由于官方已经用Alpine封装基础镜像了,不建议自己使用Alpine多dockerfile,除非你比官方写的还好
docker pull alpine:latest
docker pull alpine:edge
以上是关于Docker镜像制作常用官方基础系统镜像的选择的主要内容,如果未能解决你的问题,请参考以下文章