ufscar/ubuntu_ompi本镜像基于Ubuntu操作系统,预集成OpenMPI并行计算框架,提供完整的并行计算运行环境。OpenMPI是一个开源的消息传递接口(MPI)实现,支持跨节点通信与分布式计算,适用于构建高性能计算(HPC)应用。
通过以下命令启动交互式容器:
bashdocker run -it --name mpi-instance ubuntu-openmpi /bin/bash
在容器内创建MPI测试程序(以C语言为例):
bashcat > hello_mpi.c << EOF #include <mpi.h> #include <stdio.h> int main(int argc, char** argv) { MPI_Init(&argc, &argv); int rank, size; MPI_Comm_rank(MPI_COMM_WORLD, &rank); MPI_Comm_size(MPI_COMM_WORLD, &size); printf("Hello from rank %d of %d\n", rank, size); MPI_Finalize(); return 0; } EOF
使用mpicc编译程序:
bashmpicc hello_mpi.c -o hello_mpi
本地运行(单节点多进程):
bashmpirun -np 4 ./hello_mpi # 使用4个进程运行
创建docker-compose.yml配置文件:
yamlversion: '3' services: mpi-node1: image: ubuntu-openmpi container_name: mpi-node1 tty: true networks: mpi-net: ipv4_address: 172.20.0.2 mpi-node2: image: ubuntu-openmpi container_name: mpi-node2 tty: true networks: mpi-net: ipv4_address: 172.20.0.3 networks: mpi-net: driver: bridge ipam: config: - subnet: 172.20.0.0/24
启动集群:
bashdocker-compose up -d
在主节点(如mpi-node1)运行跨节点MPI程序:
bash# 在mpi-node1容器内执行 mpirun -np 4 -hosts 172.20.0.2,172.20.0.3 ./hello_mpi
/usr/lib/openmpi/usr/include/openmpi--mca btl_tcp_port_min和--mca btl_tcp_port_max调整)--cpus和--memory参数限制容器资源manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务