Docker 基础镜像

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker 基础镜像相关的知识,希望对你有一定的参考价值。

参考技术A

buster 现在更常见,未来 bullseye 会越来越多。 一般情况下,其它几个都不是我们的第一选择。

Alpine 是众多 Linux 发行版中的一员,和 CentOS、Ubuntu、Archlinux 之类一样,只是一个发行版的名字,号称小巧安全,有自己的包管理工具 apk 。

Alpine 非常非常小:100M vs 5M !

官方 Alpine 镜像的文档: http://gliderlabs.viewdocs.io/docker-alpine/

但是 Alpine 的小是有代价的,在不轻易间可能会给你造成麻烦!

Alpine Linux 除了插件了一些不必要的软件之外,特别重要的是,它使用了 musl libc 代替了大名鼎鼎的 glibc 。

musl libc 含有和 glibc 一样的标准功能,但是问题是 glibc 还有标准功能之外的扩展功能,由于 glibc 的历史地位和市场占有率,导致 glibc 的扩展功能实际上的使用也很广泛!有不少软件的编译、安装和运行都用到了 glibc 的扩展功能,因此这些软件在使用了 glibc 的基础颈项上就能运行,在使用了 musl libc 的 alpine 上则不行。

另外,Alpine 并没有像 Red Hat 或 Canonical 之类的大公司为其提供维护支持,软件包的数量也比这些发行版少很多(如果只看开箱即用的默认软件仓库,Alpine 只有 10000 个软件包,而 Ubuntu、Debian 和 Fedora 的软件包数量均大于 50000。)

如果实在不想折腾,可以选择一个折衷的镜像 xxx:slim。slim 镜像一般都基于 Debian 和 glibc,删除了许多非必需的软件包,优化了体积。如果构建过程中需要编译器,那么 slim 镜像不适合,除此之外大多数情况下还是可以使用 slim 作为基础镜像的。

Docker 镜像:基于 Ubuntu 的基础镜像中文问题解决

参考技术A 构建镜像时在 Dockerfile 中添加:

或者,容器运行时添加环境变量:

以上是关于Docker 基础镜像的主要内容,如果未能解决你的问题,请参考以下文章

Docker 基础镜像

docker镜像管理基础

docker镜像管理基础

docker镜像管理基础

【3.1】docker基础知识 镜像

docker基础命令,docker网络模式!!!