
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本镜像基于NixOS Linux发行版构建,已预先启用Nix Flakes功能。NixOS是一款基于Nix包管理器的Linux系统,以原子化包管理、声明式配置和环境可复现性为核心特性。Flakes是Nix的实验性功能(现已广泛应用),提供了标准化的项目结构、依赖锁定机制和更好的命令行体验,解决了传统Nix配置中依赖管理复杂、可移植性不足的问题。
nix flake命令flake.nix定义项目结构、依赖和构建流程flake.lock锁定依赖版本,确保环境一致性flake.lock精确锁定所有依赖版本(包括Nixpkgs提交哈希)flake.nix定义构建步骤,实现"代码即配置"启动交互式容器(默认进入bash shell):
bashdocker run -it --rm docker.xuanyuan.run/nixos/nix:flakes-enabled
验证Flakes功能是否启用:
bashnix flake --help # 若输出帮助信息则表示Flakes已启用
将宿主机的Flakes项目目录挂载到容器中使用:
bash# 假设宿主机当前目录包含flake.nix和flake.lock docker run -it --rm -v $(pwd):/workspace docker.xuanyuan.run/nixos/nix:flakes-enabled sh -c "cd /workspace && nix flake show"
在容器内构建Flakes项目(以Python应用为例):
bash# 假设flake.nix中定义了"packages.x86_64-linux.myapp"构建目标 docker run -it --rm -v $(pwd):/workspace docker.xuanyuan.run/nixos/nix:flakes-enabled sh -c "cd /workspace && nix build .#myapp"
构建产物将输出到宿主机当前目录的result符号链接下。
通过nix develop进入项目开发环境(包含所有依赖):
bashdocker run -it --rm -v $(pwd):/workspace docker.xuanyuan.run/nixos/nix:flakes-enabled sh -c "cd /workspace && nix develop"
bash# 启动容器并持久化Nix存储(避免重复下载依赖) docker run -it --name nix-flakes-dev \ -v nix-store:/nix/store \ -v $(pwd):/project \ docker.xuanyuan.run/nixos/nix:flakes-enabled
yamlversion: '3.8' services: nix-dev: image: docker.xuanyuan.run/nixos/nix:flakes-enabled volumes: - ./:/project:rw # 挂载项目目录 - nix-store:/nix/store # 持久化Nix存储 - nix-config:/etc/nix # 持久化Nix配置 working_dir: /project tty: true stdin_open: true volumes: nix-store: # 存储Nix包和依赖 nix-config: # 存储Nix配置文件
| 环境变量名 | 说明 | 默认值 |
|---|---|---|
NIX_CONFIG | 额外Nix配置参数(覆盖默认配置) | experimental-features = nix-command flakes |
NIX_PATH | Nix搜索路径,用于指定Nixpkgs位置或自定义频道 | nixpkgs=/nix/var/nix/profiles/per-user/root/channels/nixpkgs |
USER | 容器内运行用户 | root |
HOME | 用户主目录 | /root |
如需修改Nix配置(如启用更多实验性功能),可通过挂载配置文件实现:
bashdocker run -it --rm \ -v $(pwd)/nix.conf:/etc/nix/nix.conf \ docker.xuanyuan.run/nixos/nix:flakes-enabled
示例nix.conf内容:
iniexperimental-features = nix-command flakes ca-references build-users-group = root sandbox = true
/nix/store加速后续使用)您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务