"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."


[DL] 윈도우에서 도커로 텐서플로 GPU 설치하기
728x90

 

Windows Docker로 Tensorflow GPU 버전 설치하는 방법을 알아보겠습니다.

윈도우의 Docker Desktop에서 설치하는 방법과 WSL의 우분투에서 설치하는 방법으로 설명합니다.

 

Docker Desktop으로 Tensorflow GPU 설치하기

Tensorflow Docker Image Pull 하기

윈도우 Docker Desktop을 실행하고, 왼쪽 메뉴에서 Image를 눌러서 들어 갑니다. 

그 후 상단의 검색바를 선택해서 검색을 수행합니다.

 

tensorflow 검색어로 검색하면 tensorflow 도커 이미지를 볼 수 있습니다.

tensorflow/tensorflow로 이름이 되어 있는 이미지가 텐서플로에서 정식으로 제공하는 이미지이므로 해당 이미지를 받도록 하겠습니다.

 

GPU 버전을 설치할 것이기 때문에 Tag의 드롭다운 메뉴를 선택해서 latest-gpu-jupyter를 선택합니다.

저는 주피터 노트북이 바로 실행되는 버전을 설치했고, 주피터 노트북을 원하지 않으면 lastest-gpu 버전을 설치하면 됩니다.

Tag 선택 후 Pull 버튼을 누르면 이미지 다운로드가 시작됩니다.

 

이미지를 다 다운로드 받으면 해당 이미지가 화면에 나옵니다.

 

Tensorflow Docker Container 생성하기

도커 이미지를 받았으니 도커 컨테이너를 생성해보겠습니다.

왼쪽 메뉴바에서 Images를 선택한 후 다운로드 받은 이미지에서 Action에 있는 재생 버튼을 클릭합니다.

그러면 컨테이너를 생성할 수 있는 창이 뜹니다.

내부 주피터 노트북에 접근할 수 있는 외부 포트가 필요하기 때문에 호스트 Ports에 사용할 포트를 적습니다.

Volumes 역시 필요하면 설정합니다.

 

gpu tensorflow로 실행하기 위해 gpus all 옵션도 넣어줍니다. 그 후 Run을 눌러 컨테이너를 생성합니다.

 

컨테이너가 생성되면 Containers 메뉴에 생성한 컨테이너가 나타납니다.

 

저는 Jupyter notebook Docker를 설치하였기 때문에 주피터 노트북에 접속할 수 있었습니다.

 

도커 컨테이너를 생성하고, 주피터 노트북도 잘 실행되지만 한가지 문제가 있습니다. 제가 원하는 도커는 컨테이너는 GPU가 돌아가는 tensorflow인데 실상은 GPU를 인식하지 못하고, CPU로만 동작하고 있었습니다.

 

아무리 이 옵션 저 옵션을 줘바도 Docker Desktop에서는 설정이 불가능하여 WSL로 설치한 우분투에서 도커 컨테이너를 생성하였습니다.

 

반응형

 

WSL로 Tensorflow GPU 설치하기

MobaXterm이나 시작 메뉴에서 Ubuntu를 실행하여 터미널로 들어갑니다.

 

Tensorflow Docker Image Pull 하기

커맨드 상에서 docker pull 명령어로 이미지를 가져오면 됩니다. 

tensorflow/tensorflow 이미지의 tag는 latest-gpu-jupyter를 가져오겠습니다.

$ docker pull tensorflow/tensorflow:latest-gpu-jupyter

도커 이미지 다운로드가 시작됩니다.

 

다운로드가 완료되면, 아래 명령으로 이미지를 제대로 다운받았는지 확인해봅니다.

$ docker images

 

Tensorflow Docker Container 생성하기

docker run 명령으로 도커 컨테이너를 생성합니다. 이때 GPU를 사용하기 위해서는 --gpus 옵션을 넣어줘야 합니다.

$ docker run --gpus all -itd -v /mnt/d/workspace/jupyter:/tf -p 9000:8888 tensorflow/tensorflow:latest-gpu-jupyter

 

도커 컨테이너가 생성되었습니다.

 

이제 GPU 옵션이 제대로 먹었는지 확인해보겠습니다.

이제 GPU를 사용하는 tensorflow 도커 컨테이너를 쓸 수 있습니다.

 

Docker Desktop에서는 컨테이너 생성 시 --gpus 옵션을 넣을 수 없어서 GPU를 사용하기 위해서는 WSL에서 docker run 커맨드를 이용해서 도커 컨테이너를 생성해야 합니다.

 

 

이상 윈도우 도커에서 텐서플로 GPU 주피터 노트북 컨테이너를 생성하는 방법을 알아보았습니다.

 

728x90
728x90
LIST