为dokcer中最简版ubuntu(70M)增加apt安装能力

如果要在docker中安装软件,除了直接找对应的软件镜像,一般我们会先安装Linux系统,然后再在里面安装各种需要的软件。

比如我想安装乌班图,直接下载官方的版本:

为dokcer中最简版ubuntu(70M)增加apt安装能力

这个目前是Ubuntu20.04,只有72M,因为它只有操作系统的基本功能,大部分软件都没有。接下来我们对它进行调教。

更换apt源

这个新的系统启动后,连文本编辑器也没有。一般我们会安装vim,但是现在什么也安装不了:

为dokcer中最简版ubuntu(70M)增加apt安装能力
现在就需要给它更换apt源并拉缓存。

打开https://mirrors.ustc.edu.cn/repogen/拉到最下面,修改版本为自己的

为dokcer中最简版ubuntu(70M)增加apt安装能力
需要把里面的内容替换到 /etc/apt下面的 sources.list文件中。可以点后面的下载按钮下到外面,然后通过目录映射复制过去,也可以复制内容粘贴过去。这里采用直接复制的方法:先把原始文件备份,然后通过 echo xxx >> file的命令写进去, echo接受的字符串用双引号包起来就可以换行
为dokcer中最简版ubuntu(70M)增加apt安装能力

支持HTTPS

现在我们把源换成了国内的中科大,但是依然不能更新,会类似这样报错 Certificate verification failed: The certificate is NOT trusted. The certificate issuer is unknown. Could not handshake: Error in the certificate verification. [IP: 202.141.160.110 443]

为dokcer中最简版ubuntu(70M)增加apt安装能力
可以看到里面说 Try installing ca-certificates,但是并不能用,因为现在任何软件都安装不了:
为dokcer中最简版ubuntu(70M)增加apt安装能力
就是因为https相关的原因,需要安装ca-certificaters。但是我根本不能apt update,咋能apt install呢?陷入死循环了耶,就像下载了一个winrar.rar一样无奈。

没关系,我们手动来安装。
https://packages.ubuntu.com/focal-updates/amd64/libssl1.1/download 下载了libssl(找到这个地址也不容易啊),然后执行 dpkg -i libssl1.1_1.1.1f-1ubuntu2.10_amd64.deb;
https://packages.ubuntu.com/focal-updates/amd64/openssl/download 下载 openssl,执行 dpkg -i openssl_1.1.1f-1ubuntu2.10_amd64.deb;
https://packages.ubuntu.com/focal-updates/all/ca-certificates/download 下载ca-certificaters,执行 dpkg -i ca-certificates_20210119_20.04.2_all.deb。

这里都是针对20.04版本(也就是url中的focal)的64位操作系统下载的,如果你不是,要相应变更。

这时候再执行 apt update就可以了:

为dokcer中最简版ubuntu(70M)增加apt安装能力

docker image

现在这个镜像就方便使用了,如果你不想自己走一遍,可以下载我的镜像,我刚打包上传了:

为dokcer中最简版ubuntu(70M)增加apt安装能力
地址在https://hub.docker.com/repository/docker/davelet/ubuntu20.04/tags,可以拉取。

Original: https://www.cnblogs.com/somefuture/p/15727303.html
Author: 老魏去东
Title: 为dokcer中最简版ubuntu(70M)增加apt安装能力

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/565574/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球