1. 基于Kylin-Server-10-SP1-Release-Build04-20200711-x86_64.iso,本地创建虚拟机,最小化安装系统。
2. 登录虚拟机,构建镜像文件。
#创建工作目录,不能用/root mkdir /tmp/kylin-docker-fs && cd /tmp/kylin-docker-fs
#创建基础目录,dev 必须要创建,不然会提示找不到/dev/null mkdir usr dev cp -a /usr/lib /usr/lib64 /usr/bin /usr/share usr/
#创建链接 ln -s usr/lib lib ln -s usr/lib64 lib64 ln -s usr/bin bin
#复制配置以及root目录 cp -a /etc /root ./
#裁剪部分脚本,不然会提示/proc 没有mount rm -rf etc/profile.d/flatpak.sh etc/profile.d/gawk.csh etc/profile.d/gawk.sh etc/profile.d/lang.csh etc/profile.d/lang.sh etc/profile.d/system-info.sh
#测试镜像目录 chroot . exit
#镜像目录测试没有问题,打包 cd .. tar -C kylin-docker-fs/ -z -c . -f kylin-armv10-docker.tar.gz
|
3. 构建Docker镜像目录
mkdir /tmp/kylin-docker && cd /tmp/kylin-docker mv ../kylin-armv10-docker.tar.gz ./
vi Dockerfile,内如如下: FROM scratch ADD kylin-armv10-docker.tar.gz / LABEL \ org.label-schema.schema-version="1.0" \ org.label-schema.name="Kylin Base Image" \ org.label-schema.vendor="Kylin" \ org.label-schema.license="GPLv2" \ org.label-schema.build-date="20230530" \ org.opencontainers.image.title="Kylin Base Image" \ org.opencontainers.image.vendor="Kylin" \ org.opencontainers.image.licenses="GPL-2.0-only" \ org.opencontainers.image.created="2023-05-30 00:00:00+00:00"
CMD ["/bin/bash"]
|
4. 编译镜像
cd /tmp/kylin-docker docker build . -t kylin:10sp1
#构建完成后,查看镜像信息
[root@localhost kylin-docker]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE kylin 10sp1 aba7143ddd6e 36 seconds ago 2.41GB
|
5. 运行镜像,测试镜像是否能正常使用
docker run -it kylin:10sp1 /bin/bash |