如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
LAMMPS Build Environments 是一个预配置的 Docker 镜像,旨在简化分子动力学模拟软件 LAMMPS(Large-scale Atomic/Molecular Massively Parallel Simulator)的编译、构建与定制过程。该镜像集成了 LAMMPS 编译所需的核心依赖(如编译器、数学库、并行计算框架等),提供标准化的构建环境,支持用户快速生成自定义版本的 LAMMPS 可执行文件,无需手动配置系统级依赖。
从 Docker Hub 拉取最新镜像:
bashdocker pull lammps/build-env:latest
如需指定版本(如 20230802):
bashdocker pull lammps/build-env:20230802
4.2.1 挂载本地 LAMMPS 源码
将本地 LAMMPS 源码目录(如 ~/lammps-src)挂载到容器内,通过容器编译:
bashdocker run -it --rm \ -v ~/lammps-src:/workspace/lammps \ # 挂载本地源码目录 -v ~/lammps-build:/workspace/build \ # 挂载输出目录(存放编译产物) lammps/build-env:latest \ /bin/bash -c "cd /workspace/lammps && mkdir -p build && cd build && cmake .. && make -j4"
4.2.2 通过环境变量定制编译选项
常用环境变量说明:
| 环境变量 | 取值范围 | 描述 |
|---|---|---|
LAMMPS_VERSION | latest/版本号 | 指定 LAMMPS 版本(默认 latest) |
WITH_MPI | ON/OFF | 启用 MPI 并行(默认 ON) |
WITH_OPENMP | ON/OFF | 启用 OpenMP 多线程(默认 OFF) |
WITH_GPU | ON/OFF | 启用 GPU 加速(需宿主机支持 CUDA,默认 OFF) |
EXTRA_PACKAGES | 扩展包名称(逗号分隔) | 启用扩展包(如 KIM,REAXFF) |
示例:启用 MPI+OpenMP,编译 KIM 和 ML-Potentials 扩展包:
bashdocker run -it --rm \ -v ~/lammps-src:/workspace/lammps \ -v ~/lammps-build:/workspace/build \ -e WITH_MPI=ON \ -e WITH_OPENMP=ON \ -e EXTRA_PACKAGES="KIM,ML-Potentials" \ lammps/build-env:latest \ /bin/bash -c "cd /workspace/lammps/build && cmake .. && make -j4"
如需传递 CMake 自定义参数(如指定编译器、优化选项),可直接在 cmake 命令中添加:
bashdocker run -it --rm \ -v ~/lammps-src:/workspace/lammps \ -v ~/lammps-build:/workspace/build \ lammps/build-env:latest \ /bin/bash -c "cd /workspace/lammps/build && cmake -DCMAKE_CXX_COMPILER=g++-10 -DCMAKE_BUILD_TYPE=Release .. && make -j4"
编译完成后,可执行文件 lmp 会生成在挂载的输出目录(如 ~/lammps-build),直接在宿主机使用:
bashmpirun -np 4 ~/lammps-build/lmp -in input script.lammps # 使用 MPI 并行运行
创建 docker-compose.yml 简化多参数配置:
yamlversion: '3' services: lammps-build: image: lammps/build-env:latest volumes: - ./lammps-src:/workspace/lammps # 本地源码目录 - ./lammps-build:/workspace/build # 输出目录 environment: - WITH_MPI=ON - WITH_OPENMP=ON - EXTRA_PACKAGES=KIM,REAXFF command: > /bin/bash -c "cd /workspace/lammps && mkdir -p build && cd build && cmake .. && make -j$(nproc)"
启动构建:
bashdocker-compose up
| 参数名 | 默认值 | 描述 |
|---|---|---|
CMAKE_BUILD_TYPE | Release | 编译类型(Debug/Release/RelWithDebInfo),影响优化级别和调试信息 |
MPI_IMPL | openmpi | MPI 实现(openmpi/mpich) |
GPU_ARCH | sm_60 | GPU 架构(如 sm_70 对应 NVIDIA Volta,需与宿主机 GPU 匹配) |
通过 EXTRA_PACKAGES 指定需编译的扩展包(逗号分隔),支持的常用包包括:
KIM(原子间势函数接口)REAXFF(反应力场)ML-Potentials(机器学习势函数)ASPHERE(非球形粒子模拟)BODY(刚体模拟)WITH_GPU=ON 时,需确保宿主机已安装 NVIDIA Docker 运行时(nvidia-docker),并通过 --gpus all 暴露 GPU 设备:
bashdocker run --gpus all -it --rm ... # 添加 --gpus 参数启用 GPU
--user $(id -u):$(id -g) 指定用户 ID 与宿主机一致:
bashdocker run -it --rm --user $(id -u):$(id -g) -v ~/lammps-src:/workspace/lammps ...
lammps/build-env:dev 镜像(对应 LAMMPS 开发分支)。您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。




来自真实用户的反馈,见证轩辕镜像的优质服务