
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
rust-musl-builder:用于轻松构建静态Rust二进制文件的Docker容器本仓库是https://github.com/emk/rust-musl-builder镜像的分叉版本,依赖已更新至2022年12月。
该镜像允许你使用diesel、sqlx或openssl构建静态Rust二进制文件。这些文件可作为无依赖的单一可执行文件分发,适用于任何现代Linux系统。
musl-libc、musl-gcc和rustup target支持构建静态Rust二进制mdbook(Markdown文档生成)、cargo about(依赖许可证收集)、cargo deb(Debian包构建)、cargo deny(安全问题检查)设置别名并构建发布版本:
shalias rust-musl-builder='docker run --rm -it -v "$(pwd)":/home/rust/src nasqueron/rust-musl-builder' rust-musl-builder cargo build --release
注意:当前目录需允许uid 1000、gid 1000读写。
添加卷挂载加速构建:
shalias rust-musl-builder='docker run --rm -it -v "$(pwd)":/home/rust/src -v cargo-git:/home/rust/.cargo/git -v cargo-registry:/home/rust/.cargo/registry -v target:/home/rust/src/target nasqueron/rust-musl-builder' # 修复卷权限 rust-musl-builder sudo chown -R rust:rust /home/rust/.cargo/git /home/rust/.cargo/registry /home/rust/src/target
若应用使用OpenSSL,需添加openssl-probe crate并初始化证书环境变量:
rustfn main() { openssl_probe::init_ssl_cert_env_vars(); // 你的业务代码 }
在Cargo.toml添加依赖:
toml[dependencies] diesel = { version = "1", features = ["postgres", "sqlite"] } libsqlite3-sys = { version = "*", features = ["bundled"] } # SQLite依赖 openssl = "*" # Postgres依赖
Postgres需按顺序引入库:
rustextern crate openssl; #[macro_use] extern crate diesel;
travis setup releases配置GitHub发布.travis.yml:yamllanguage: rust sudo: required os: [linux, osx] rust: stable services: [docker] before_deploy: "./build-release myapp ${TRAVIS_TAG}-${TRAVIS_OS_NAME}" deploy: provider: releases api_key: { secure: "你的加密密钥" } file_glob: true file: "myapp-${TRAVIS_TAG}-${TRAVIS_OS_NAME}.*" skip_cleanup: true on: { rust: stable, tags: true }
build-release脚本和Dockerfile:DockerfileFROM docker.xuanyuan.run/nasqueron/rust-musl-builder ADD --chown=rust:rust . ./ CMD cargo build --release
使用多阶段构建:
Dockerfile# 构建阶段 FROM docker.xuanyuan.run/nasqueron/rust-musl-builder AS builder ADD --chown=rust:rust . ./ RUN cargo build --release # 部署阶段 FROM docker.xuanyuan.run/alpine:latest COPY --from=builder /home/rust/src/target/x86_64-unknown-linux-musl/release/myapp /usr/local/bin/ CMD ["myapp"]
采用Apache 2.0许可证或MIT许可证。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务