实验室 GPU 集群采用 Slurm + Open OnDemand(OOD)作为统一入口,所有计算必须通过调度系统。
Docker 在这里定位为“高级用户自助工具”,只提供 rootless 模式,管理员不负责支持和 debug。
具体目标很简单:
你只维护一套最小可用的 rootless Docker 环境;
保证不会绕过 Slurm 和资源配额;
镜像和垃圾全算在用户 HOME 配额里,玩坏了自己负责。
整体设计是这样:
只在计算节点安装 Docker Engine 与 rootless 组件,登录节点不提供 dockerd;
系统级 dockerd 服务完全禁用,不允许任何 rootful Docker;
禁止使用 dockerd-rootless-setuptool.sh install 创建 user systemd 服务;
要求用户在 Slurm 作业(包括 IAPP)内部用 dockerd-rootless.sh 临时启动 rootless daemon,作业结束 daemon 和容器一并被 cgroup 杀掉;
镜像和容器元数据存放在 ~/.local/share/docker,HOME 有 20G 硬限额,写满自己收拾。
根本原则只有两条:
不能绕过 Slurm 调度(不在登录节点常驻任何 daemon);
不能把系统级维护责任变成你的锅(Docker 是“自备玩具”)。