zoukankan      html  css  js  c++  java
  • 为dokcer中最简版ubuntu(70M)增加apt安装能力

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

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

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

    更换apt源

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

    现在就需要给它更换apt源并拉缓存。

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

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

    支持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]

    可以看到里面说Try installing ca-certificates,但是并不能用,因为现在任何软件都安装不了:

    就是因为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就可以了:

    docker image

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

    地址在https://hub.docker.com/repository/docker/davelet/ubuntu20.04/tags,可以拉取。

  • 相关阅读:
    垃圾收集器
    垃圾收集算法
    JVM内存模型
    工厂方法模式
    类加载机制
    六大设计原则
    单例模式
    HFish开源蜜罐搭建
    利用metasploit复现永恒之蓝
    零信任网络初识
  • 原文地址:https://www.cnblogs.com/somefuture/p/15727303.html
Copyright © 2011-2022 走看看