unidata/nctests该镜像的Dockerfile及其他信息可通过交互式运行镜像或访问对应GitHub仓库获取:[***]
此Docker镜像用于对Unidata netCDF包进行spot-tests(快速测试),可测试远程或本地代码仓库。运行容器时,将从Unidata GitHub站点检出并构建测试以下包:
每个包会被构建并测试,以此验证netcdf-c的变更是否会影响其依赖包(如netcdf-fortran和netcdf-cxx4)。
来自NCO官网:
NCO工具包用于处理和分析存储在netCDF可访问格式(包括DAP、HDF4和HDF5)中的数据。它利用许多CF(气候与 forecast)元数据约定的地球物理表达能力、UDUnits转换的物理维度灵活描述、OPeNDAP的网络透明性、HDF(分层数据格式)的存储特性(如压缩、分块、组)以及GSL(GNU科学库)的许多强大数学和统计算法。NCO快速、强大且免费。
NCO集成增加了额外的回归测试能力。
可使用以下语法为netcdf-c指定非master的替代分支:
bash$ docker run -e CBRANCH="分支名称" unidata/nctests:serial
可通过将本地git目录挂载到Docker镜像文件系统根目录,使用本地目录替代GitHub拉取:
bash$ docker run -v $(pwd)/netcdf-c:/netcdf-c unidata/nctests:serial
容器运行时会检查/netcdf-c、/netcdf-fortran、/netcdf-cxx4和/netcdf4-python是否存在。若存在,将从这些本地目录克隆而非从GitHub拉取。
注意:由于是从"本地"目录克隆,需确保本地目录已处于要分析的分支。若需在CDash仪表板正确标记构建,仍需设置相应环境变量。
以下环境变量可用于控制运行时行为:
CMD - 运行替代命令,可选值:helpUSEDASH - 设置为非TRUE值以禁用远程仪表板CBRANCH - netcdf-c的Git分支FBRANCH - netcdf-fortran的Git分支CXXBRANCH - netcdf-cxx4的Git分支PBRANCH - netcdf4-python的Git分支NCOBRANCH - NCO的Git分支,默认:4.5.3COPTS - netcdf-c的CMake选项FOPTS - netcdf-fortran的CMake选项CXXOPTS - netcdf-cxx4的CMake选项AC_COPTS - netcdf-c的Autoconf选项AC_FOPTS - netcdf-fortran的Autoconf选项AC_CXXOPTS - netcdf-cxx4的Autoconf选项RUNF - 设置为OFF、FALSE或非TRUE值,禁用netcdf-fortran测试RUNCXX - 设置为OFF、FALSE或非TRUE值,禁用netcdf-cxx4测试RUNP - 设置为OFF、FALSE或非TRUE值,禁用netcdf4-python测试RUNNCO - 设置为OFF、FALSE或非TRUE值,禁用NCO测试CREPS - 默认1,netcdf-c构建和测试的重复次数FREPS - 默认1,netcdf-fortran构建和测试的重复次数CXXREPS - 默认1,netcdf-cxx4构建和测试的重复次数PREPS - 默认1,netcdf4-python构建和测试的重复次数NCOREPS - 默认1,NCO构建和测试的重复次数USECMAKE - 默认TRUE,设为TRUE时运行CMake构建USEAC - 默认FALSE,设为TRUE时运行源码内Autoconf构建注意:
USECMAKE和USEAC可同时使用,结合CREPS等循环控制选项,可验证不同构建系统是否相互干扰。
以下示例假设在命令行中操作,且位于
netcdf-c根目录,$(pwd)解析为/netcdf/directory的根路径。
以下命令行选项将重复使用,在此统一说明(完整Docker命令行参数说明见[***]
--rm:容器退出后清理镜像-it:以交互式shell运行,支持ctrl-c终止容器-v:将本地卷挂载到Docker镜像-e:设置环境变量显示镜像帮助文件:
bash$ docker run --rm -it -e CMD=help unidata/nctests:serial
进入容器shell(退出后更改不保留):
bash$ docker run --rm -it unidata/nctests:serial bash
bash$ docker run --rm -it unidata/nctests:serial
bash$ docker run --rm -it -e CBRANCH=working unidata/nctests:serial
bash$ docker run --rm -it -e COPTS="-DENABLE_DAP=OFF" unidata/nctests:serial
bash$ docker run --rm -it -e USEDASH=OFF unidata/nctests:serial
注意:此方式下不会在容器内切换分支,需确保本地仓库已处于要分析的分支。
bash$ docker run --rm -it -v $(pwd):/netcdf-c unidata/nctests:serial
bash$ docker run --rm -it -v $(pwd):/netcdf-c -e USEDASH=OFF -e RUNF=OFF -e RUNCXX=OFF unidata/nctests:serial
bash# docker run --rm -it -e USECMAKE=OFF -e USEAC=TRUE -e CREPS=2 unidata/nctests:serial
要在不同环境运行上述示例,可将
nctests:serial替换为nctests:openmpi、nctests:mpich、nctests:serial32等。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像服务
在 Docker Desktop 配置镜像
Docker Compose 项目配置
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
MacOS OrbStack 容器配置
在宝塔面板一键配置镜像
Synology 群晖 NAS 配置
飞牛 fnOS 系统配置镜像
极空间 NAS 系统配置服务
爱快 iKuai 路由系统配置
绿联 NAS 系统配置镜像
QNAP 威联通 NAS 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
来自真实用户的反馈,见证轩辕镜像的优质服务