开发者上手教程:在本地构建 Universal Blue main 镜像的完整步骤 开发者上手教程在本地构建 Universal Blue main 镜像的完整步骤【免费下载链接】mainOCI base images of Fedora with batteries included项目地址: https://gitcode.com/gh_mirrors/main9/main想亲自体验Universal Blue main 镜像的本地构建流程吗本教程将带你从零开始在本地环境中完整构建基于 Fedora 的 OCI 基础镜像轻松掌握容器镜像构建的核心方法。无论你是想自定义系统镜像的开发者还是对 uBlue 生态感兴趣的新手这份 Universal Blue 镜像构建指南都能帮你快速上手少走弯路。什么是 Universal Blue main 镜像Universal Blue main是一个为 Fedora 原子桌面系统准备的全家桶基础镜像项目官方定位是OCI base images of Fedora with batteries included——也就是说它在原生 Fedora 的基础上预装了大量开箱即用的软件包与系统优化。它是整个 uBlue 生态的基石像知名的Aurora、Bazzite、Bluefin等成品镜像都是以它为基础二次构建的。目前该仓库主要构建三种镜像镜像类型说明base无桌面环境的最小化基础镜像silverblue基于 GNOME 桌面的镜像kinoite基于 KDE Plasma 桌面的镜像同时它还支持main和nvidia两种 variant方便集成 NVIDIA 驱动。本地构建前的准备工作环境与依赖清单在开始构建之前你需要先准备好一套完整的构建环境。别担心工具清单并不复杂大部分都是 Linux 生态的常用组件podman容器构建与运行的核心工具just命令运行器项目用它对构建流程做了封装git克隆项目源码yq / jq / skopeo用于解析 YAML/JSON 配置和检查镜像信息cosign用于验证上游镜像签名构建时会自动校验 提示项目对容器引擎做了自适应优先使用podman没有的话会尝试podman-remote配置非常友好。第一步克隆 Universal Blue main 仓库首先把项目源码拉取到本地。仓库地址为git clone https://gitcode.com/gh_mirrors/main9/main克隆完成后进入项目目录你会看到以下核心文件它们共同构成了构建系统的骨架Containerfile多阶段构建的核心构建脚本Justfile封装了构建、运行、签名等全部常用命令packages.json定义各镜像要安装/排除的软件包清单image-versions.yaml锁定上游基础镜像与内核的 digest 版本第二步一键构建 Universal Blue 镜像这个项目最大的亮点就是构建命令极其简单。Justfile 中已经封装好了完整的构建流程你只需要一个命令just build执行后just会自动完成以下一系列工作从 image-versions.yaml 读取锁定的镜像 digest保证构建可复现用cosign校验上游 akmods、Fedora 基础镜像的签名自动拉取所需的 akmods 内核模块镜像按照 Containerfile 执行多阶段构建依次运行 install.sh、initramfs.sh、post-install.sh 等构建脚本最后通过bootc container lint做镜像合规性检查。默认配置会构建silverblue Fedora 44latest镜像。当然你也可以通过参数自由指定just build kinoite 43 main上面这条命令表示构建kinoite 镜像 Fedora 43GTS 长期支持版 main variant灵活度非常高。支持构建的 Fedora 版本标签Fedora 版本说明gts43长期支持版稳定优先latest44最新稳定版默认beta45测试版尝鲜用第三步运行并测试构建好的镜像构建完成后你可以立刻把镜像跑起来做验证just run该命令会以交互模式启动一个 bash 终端进入刚构建好的镜像方便你检查软件包、系统配置是否正确。如果镜像还没构建just还会贴心地提示并自动帮你先构建再运行交互体验相当顺手。进阶玩法自定义自己的 Universal Blue 镜像掌握了基础构建后你完全可以打造属于自己的镜像增删软件包编辑 packages.json 中的include和exclude列表即可精确控制镜像里装了哪些软件。比如 silverblue 会额外加入ibus-mozc输入法kinoite 则带上一整套fcitx5中文输入组件选择 NVIDIA 驱动把 variant 换成nvidia构建时会自动集成 akmods-nvidia-open 驱动模块修改系统配置构建脚本会先执行rsync将 sys_files 目录同步到系统根目录你可以直接往里添加自己的 systemd 服务、dracut 配置等。常见问题速查Q构建时网络拉取失败怎么办Justfile 内置了pull-retry重试机制会自动重试 3 次一般耐心等待即可。Q如何验证镜像签名是否有效项目提供了just verify-container命令配合仓库根目录的 cosign.pub 公钥即可校验镜像签名这也是项目 CI 中会执行的安全检查。Q想清理本地构建的镜像执行just clean即可移除本地的所有构建产物保持磁盘整洁。总结通过本教程你已经完整掌握了Universal Blue main 镜像的本地构建方法从环境准备、仓库克隆到just build一键构建、just run运行验证再到软件包自定义与 NVIDIA 变体构建。整个流程高度自动化即使是容器构建新手也能快速产出属于自己的 Fedora 原子系统镜像。现在就动手试试吧构建一个属于你的 Universal Blue 镜像其实比想象中更简单【免费下载链接】mainOCI base images of Fedora with batteries included项目地址: https://gitcode.com/gh_mirrors/main9/main创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考