DeepFlowest

[Docker] 내 컴퓨터와 docker 컨테이너와의 저장소 공유 본문

Docker

[Docker] 내 컴퓨터와 docker 컨테이너와의 저장소 공유

Orange57 2020. 12. 8. 15:48
728x90
반응형
SMALL

앞 포스팅에 의해 이미지가 설치되어 있다.

이 이미지로 새로운 컨테이너(내 컴퓨터와 저장소 공유가 가능한)를 만들 예정이다.

 

 내 컴퓨터(로컬)에 workspace 폴더가 있고, 컨테이너에도 workspace를 만들어서 서로 저장소를 공유하기 위해서는 다음 코드를 입력한다.

( 컨테이너 이름 : darknet) 

$ docker run -itd -v $HOME/workspace:/workspace --name darknet  nvidia/cuda:10.2-cudnn7-devel-ubuntu18.04

* 컨테이너 안에서도 내 컴퓨터에 있는 nvidia driver와 동일하게 쓰려면 다음과 같은 코드 입력하면 된다.

( 컨테이너 이름 : darknet2) 

$ docker run --gpus all -itd -v $HOME/workspace:/workspace --name darknet2  nvidia/cuda:10.2-cudnn7-devel-ubuntu18.04

● 컨테이너 접속

( 컨테이너 이름 : darknet) 

$ docker exec -it darknet /bin/bash

 새로운 폴더(이름: 'temp') 생성

$ touch temp

 폴더 삭제

$ rm 'temp'

※ 관리자 권한 변경

 

도커에서 만든 'temp'폴더가 호스트(내 컴퓨터)에도 생성된 것을 확인할 수 있다.

하지만 권한을 보면  root(관리자)로 되어 있어서 호스트(내 컴퓨터)에서 'temp'를 삭제할 수 없다.

 

따라서 권한을 바꿔주기 위해서 다음을 입력하면 권한이 yr로 되었음을 볼 수 있다.

$ sudo chown yr temp



이것저것 설치하다가 reboot 해야하는 경우,

$ exit

도커 밖으로 나와서

현재 돌아가고 있는 컨테이너 확인 후

$ docker ps

멈추기

$ docker stop darknet

다시 확인해 보고 아무것도 안 뜨면

$ docker start darknet

$ docker exec -it darknet /bin/bash

 

728x90
반응형
LIST
Comments