gitlab-ci - gitlab-ci 服务中的 Nvidia 运行时
问题描述
我有一个加载 docker daemon docker 的服务,我想在该服务中使用 nvidia gpus,我创建了一个以 dockerd 作为入口点的图像并安装了 nvidia cuda 驱动程序,但是当我尝试部署我的应用程序以进行测试时,我是在服务映像中面临与 nvidia 驱动程序相关的错误
docker:来自守护进程的错误响应:OCI 运行时创建失败:container_linux.go:346:启动容器进程导致“process_linux.go:449:容器初始化导致”process_linux.go:432:运行预启动钩子 1 导致“运行钩子错误:退出状态 1,stdout: , stderr: nvidia-container-cli: 初始化错误: driver error: failed to process request\n\”””: 未知。
#image: chatzich/dinvidia
stages:
- test
- package
before_script:
- echo "Before script section"
after_script:
- echo "After script section"
test:
image: chatzich/dinvidia
services:
- name: chatzich/dinvidia
alias: dinvidia
stage: build
variables:
DOCKER_HOST: tcp://dinvidia:2375
DOCKER_DRIVER: overlay2
DOCKER_TLS_CERTDIR: ""
tags:
- gpu
script:
# Build the production image
- echo "Build stage script"
- ldconfig -p | grep nvidia
- docker --version
- docker run --rm --runtime=nvidia nvidia/cuda ldconfig -p | grep nvidia
stage: test
package:
stage: package
script:
# Build the production image
- echo "Package stage script"
解决方案
推荐阅读
- scala - 如何使用 Scala 将数据作为元组传递到 Spark 中的 rdd
- kubernetes - Kubernetes 网络:使用 Calico 从外部服务器连接到集群命名空间服务
- angular - 订阅时返回。...类型“订阅”缺少以下属性
- jasper-reports - 如何在两列中创建列表控件 jr:list?
- excel - 根据字符串提取所有重复项
- node.js - 如何在此示例中使用 Passport 实现 JWT
- android - 更新 EditText 内容而不重置输入法状态
- fortran - 获取 fortran 运行时错误:文件结尾
- c - C中的线程之间如何共享内存
- jsf - jsf/primeface 中有没有办法下载文件然后更改页面?