Tech/Docker

[Docker] NVML, NVIDIA, CUDA와 관련된 에러 다모여!

은가 2023. 3. 30. 20:31

FUEL을 설치해 보려고 오랜만에 docker run을 시도했다.

 

미리 받아둔 Ubuntu 20.04 이미지를 container로 굽는 순간, 아래와 같은 에러를 마주쳤다.

docker: Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error running hook #0: error running hook: exit status 1, stdout: , stderr: Auto-detected mode as 'legacy'
nvidia-container-cli: initialization error: nvml error: driver/library version mismatch: unknown.
ERRO[0000] error waiting for container: context canceled

아마도 기존에 사용하던 NVIDIA 드라이버에서 내가 업데이트를 한 번 한 적이 있어 그런 것 같다.

 

NVIDIA와 CUDA 관련된 에러를 마주치면 참 해결하기가 곤란하다. 잘 알면 쉬울텐데, 왠지 연결되어 있고 꼬여 있는 게 '아.. 또 해결 해야돼..?' 라는 생각부터 들고 좌절하게 된다.

 

그래서 평소에 도움을 많이 받는 글들을 저장해 두기로 했다. 여기 나열된 순서대로 링크를 따라가 차근차근 해결해 보면, 두 달 전 켰었던 Fuel 컨테이너도 무슨 일 있었냐는 듯 뿅! 켜지는 마법을 경험할 수 있다 :)


1. NVIDIA 드라이버 삭제하고 재설치하기

https://goodtogreate.tistory.com/entry/%EC%97%94%EB%B9%84%EB%94%94%EC%95%84NVIDIA-%EA%B7%B8%EB%9E%98%ED%94%BD-%EB%93%9C%EB%9D%BC%EC%9D%B4%EB%B2%84-%EC%9E%AC%EC%84%A4%EC%B9%98-%EB%B0%8F-%EC%97%85%EA%B7%B8%EB%A0%88%EC%9D%B4%EB%93%9C

 

엔비디아(NVIDIA) 그래픽 드라이버 재설치 및 업그레이드

엔비디아(NVIDIA) 그래픽 드라이버 재설치 및 업그레이드 설치 정보 확인 inxi -Gx 제거 # 설정과 파일 까지 모두 제거 sudo apt-get --purge remove *nvidia* 설치: runfile 이용 방법 엔비디아 홈페이지에서 다운

goodtogreate.tistory.com

새로운 에러가 떴다.

docker: Error response from daemon: Unknown runtime specified nvidia.
See 'docker run --help'.

2. NVIDA와 맞는 CUDA 버전 재설치하기

https://hegosumluxmundij.tistory.com/122

여전히 같은 에러가 뜬다.

docker: Error response from daemon: Unknown runtime specified nvidia.
See 'docker run --help'.

3. docker run 커맨드 옵션 확인하기

`--runtime=nvidia` 대신 `--gpus-all` 옵션만 사용하기

https://inpages.tistory.com/161

 

docker: Error response from daemon: Unknown runtime specified nvidia.

nvidia-docker를 설치한 뒤 도커를 실행시키는데 아래와 같은 에러가 발생했습니다. --runtime 옵션이 아닌 --gpus 옵션을 이용하면 해결할 수 있습니다. docker: Error response from daemon: Unknown runtime specified nv

inpages.tistory.com

또 새로운 에러가 떴다. 

docker: Error response from daemon: could not select device driver "" with capabilities: [[gpu]].
ERRO[0000] error waiting for container: context canceled

하지만 아직 한 장의 카드가 더 남아 있다.


4. nvidia-container-toolkit 설치하기

https://bluecolorsky.tistory.com/110

 

[정보] docker: Error response from daemon: could not select device driver with capabilities: [[gpu]] 문제 해결하기

도커를 사용하다 보면 다양한 문제에 맞닥뜨리게 된다. 해결하기 쉬운 문제부터 어려운 문제까지 수많은 문제들이 존재하는데 사용할때마다 항상 다른 오류가 발생하여 문제가 발생할때마다

bluecolorsky.tistory.com


5. docker service 재시작하기

sudo systemctl restart docker

Docker 키기 성공!