[Docker] 도커 환경에 GUI 화면 설치하기
설정하고 싶은 조건은 다음과 같다.
- CUDA 10.x (10.2 or 10.1)
- cudnn 7.6.5
- OpenCV 3.4.2
- 웹캠 영상 디스플레이
- Nvidia-driver
- 내 컴퓨터와 도커와의 폴더 공유 가능
- GUI 화면 세팅
우선, GUI 화면을 제공해주는 다음 사이트를 참고해서 설치하였다.
github.com/ml-tooling/ml-workspace
ml-tooling/ml-workspace
🛠 All-in-one web-based IDE specialized for machine learning and data science. - ml-tooling/ml-workspace
github.com
$ docker run -d \
-p 8085:8080 \
--gpus all \
--privileged \
--name "darknet" \
-v "${HOME}/workspace:/workspace" \
-v /dev/video0:/dev/video0 \
--restart always \
mltooling/ml-workspace-gpu:0.11.0
docker run -d \ # -d : cmd 창 종료해도 뒤에서 돌아갈 수 있게 함.
-p 8085:8080 \ # 포트 연결 (localhost : 8080)
--gpus all \ # Nvidia-driver 내 컴퓨터에 있는 거랑 연결
--privileged \ # 웹캠 영상 디스플레이
--name "darknet" \ # 컨테이너 이름 : darknet
-v "${HOME}/workspace:/workspace" \ # 내 컴퓨터에 있는 workspace 폴더를 도커 환경 내에서도 이용할 수 있게 연결
-v /dev/video0:/dev/video0 \ # 내 컴퓨터에 있는 카메라 video 0을 도커 환경 내에서도 이용할 수 있게 연결
--restart always \
mltooling/ml-workspace-gpu:0.11.0
# 그리고 기본적으로 이 image는 CUDA 10.1, cuDNN 7.6.5가 설치되어 있다.
# OpenCV는 기본적으로 4.4 버전이 깔려 있지만, OpenCV 3.4.2가 필요하니까 기존에 있던 4.4 버전을 다음과 같이 삭제한다.
$ pip uninstall opencv-python
$ pip uninstall opencv-python-headless
그리고 이 포스팅에 의해 OpenCV 3.4.2를 설치한다.
그러면 다음과 같이 도커 내에 Desktop GUI가 만들어지고, Jupyter, Visual Studio Code 등을 활용할 수 있다.
※ 다시 시작할 때,
$ docker start darknet
$ docker exec -it darknet /bin/bash
* 8080 포트로 원격 접속이 안 되어서 8081로 다시 만들었다.
(컨테이너 이름 : darknet5)
$ vi temp
$ bash temp
※ 다시 시작할 때,
$ docker start darknet5
$ docker exec -it darknet5 /bin/bash
※ 에러 발생 시, 참고 사이트
https://curioso365.tistory.com/136
docker 컨테이너에서 pytorch 실행시 메모리 에러 해결
문제 docker에 pytorch 개발 환경을 구축하여 실행 시키고 컨테이너 안에서 관련 코드는 돌리니 다음과 같은 에러 메시지가 발생하였다. ERROR: Unexpected bus error encountered in worker. This might be caus..
curioso365.tistory.com