该项目用于自动构建和推送 CUDA 相关的 Docker 镜像到 Docker Hub。
- 配置文件
docker_build_config.json定义要构建的镜像的 CUDA 版本、CUDNN 版本和 Ubuntu 版本 具体版本选择参考 NVIDIA Docker- name: 配置名称,没什么用
- cuda: CUDA 版本
- cudnn: CUDNN 版本
- ubuntu: Ubuntu 版本
- enabled: 是否自动构建和推送本配置的镜像
- 最终得到的镜像 tag 格式类似
${DOCKERHUB_USERNAME}/cuda:11.6.1_cudnn8_ubuntu20.04
在 github action 里配置了自动构建和推送镜像,需要先做如下配置
- 创建 Docker Hub 访问令牌
登录 Docker Hub 账号,点击
头像 -> Account Settings -> Personal access tokens -> New Access Token - 配置 GitHub Secrets
在 GitHub 仓库中,点击
Settings -> Secrets and variables -> Actions -> New repository secret,添加以下 secrets:DOCKERHUB_USERNAME: 你的 Docker Hub 用户名DOCKERHUB_TOKEN: 之前创建的 Docker Hub 访问令牌
可以在 commit 后添加标签并推送到 github,触发自动构建和推送镜像到 dockerhub
# 创建标签
git tag v1.0.0
# 推送标签到远程仓库
git push origin v1.0.0nohup sh docker_build.sh {DOCKER_USER_NAME} {CUDA_VERSION} {CUDNN_VERSION} {UBUNTU_VERSION} > {LOG_PATH} 2>&1 &
# e.g.
# nohup sh docker_build.sh yuzijian 11.6.1 8 20.04 > ./logs/docker_build_1.log 2>&1 &sh docker_run.sh- 貌似不需要预置的 cudnn,改成“nvidia/cuda:12.1.0-devel-ubuntu20.04”
- 添加连接用的 ssh key 到 github action secrets, 取消dockerfile 中的注释
- 验证 docker 桌面、nomachine 连接是否配置成功
- 考虑是否要删除 zerotier
- 考虑添加显卡驱动,详见 GeForce-XorgDisplaySettingAuto.sh
- 考虑更换为 ubuntu desktop