制作自定义镜像

1. 确定软件包

  确定自己的环境都需要哪些命令,然后,从镜像文件或者yum源下载响应的安装包。

 bash基本是必选的  (bash-5.1.8-10.oe2203sp2.aarch64.rpm)

vim也是有必要的 (vim-enhanced-9.0-15.oe2203sp2.aarch64.rpm)

ssh 看需要 (openssh-8.8p1-20.oe2203sp2.aarch64.rpm openssh-server-8.8p1-20.oe2203sp2.aarch64.rpm)

tar命令(tar-1.34-4.oe2203sp2.aarch64.rpm)

2. 下载软件包

   略。

3. 创建一个根目录:openeuler_root

4. 创建一个临时目录用于存放解压的文件 tmp

5. 解压软件包到根目录

rpm2cpio a.rpm | cpio -idmv -D tmp
cp -r tmp/* openeuler_root/

6. 构建镜像

FROM scratch
ADD openeuler_root /
WORKDIR /
CMD ["/bin/bash"]

7. 生成镜像

docker build -t openeuler_test:latest .

8. 结果:

[root@192.168.136.45 docker]# docker build -t openeuler-base:latest .
Sending build context to Docker daemon  1.008GB
Step 1/4 : FROM scratch
 ---> 
Step 2/4 : ADD openeuler_root /
 ---> 5b1a4d89817a
Step 3/4 : WORKDIR /
 ---> Running in 4ef034410c0d
Removing intermediate container 4ef034410c0d
 ---> f4af44b44e76
Step 4/4 : CMD ["/bin/bash"]
 ---> Running in 22673188bfb8
Removing intermediate container 22673188bfb8
 ---> d689d5476c35
Successfully built d689d5476c35
Successfully tagged openeuler-base:latest

9. 产看镜像

[root@192.168.136.45 docker]# docker images 
REPOSITORY                TAG                 IMAGE ID            CREATED              SIZE
openeuler-base            latest              d689d5476c35        About a minute ago   512MB

补充:

这里面要注意 /etc 目录和其他自己需要的目录要自己创建,还有一些重要的环境变量和配置要加上。

    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

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

    抵扣说明:

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

    余额充值