분명 구버전 도커에서는 nvidia-docker라는 다른 버전의 도커를 사용해야 했던 걸로 알지만, 요즘은 그렇지 않은가보다.
우선 텐서플로우 도커 문서를 보겠다.
https://www.tensorflow.org/install/docker?hl=ko
Docker | TensorFlow
Docker는 컨테이너를 사용하여 TensorFlow 설치를 나머지 시스템에서 격리하는 가상 환경을 만듭니다. TensorFlow 프로그램은 호스트 시스템과 리소스를 공유(디렉터리 액세스, GPU 사용, 인터넷 연결 등)할 수 있는 이 가상 환경 내에서 실행됩니다. TensorFlow Docker 이미지는 각 출시에 대해 테스트되었습니다. Docker는 Linux에서 TensorFlow GPU 지원을 사용하는 가장 간편한 방법입니다. 호스트 시스템에 NV
www.tensorflow.org
텐서플로우 공식 사이트에서는 다음과 같은 명령어를 알려 준다.
docker run --runtime=nvidia -it tensorflow/tensorflow:latest-gpu bash
그러나 실행해 보면 다음과 같은 오류가 난다.
docker: Error response from daemon: Unknown runtime specified nvidia.
그래서 방법을 찾아본 결과,
https://github.com/NVIDIA/nvidia-docker
NVIDIA/nvidia-docker
Build and run Docker containers leveraging NVIDIA GPUs - NVIDIA/nvidia-docker
github.com
Nvidia 깃허브에 있는 nvidia-docker 리포지토리의 리드미 파일에 답이 있었다.
docker run --gpus all -it tensorflow/tensorflow:latest-gpu bash
위의 명령어는 오류 없이 잘 실행된다.
결과적으로 --runtime=nvidia 대신 --gpus all 을 사용하여 도커에서 텐서플로우 gpu버전을 사용할 수 있다.
'컴퓨터 > ML' 카테고리의 다른 글
Jupyter Notebook 접속 오류(프록시) (0) | 2020.03.12 |
---|---|
[Tensorflow #3] Linear Regression (2) (0) | 2019.12.27 |
[Tensorflow #2] Linear Regression(1) (0) | 2019.12.26 |
[Tensorflow #1] 기본 개념 (0) | 2019.12.26 |