-
220520
도커 터미널에서 에러 떴던 로그 latest 10줄 확인
docker logs --tail 10 -f gpu1
중요
220425
내 컨테이너의 사항들 커밋하기sudo docker commit 203a sg2ada:latest
이후 컨테이너 재생성
sudo docker run -it --name gpu2 --shm-size=8G --gpus "device=2" -v /home/dongkyun:/workspace -v /mnt/hdd:/workspace/dataset sg2ada:latest bash
220428
도커 안끄고 빠져나가기
ctrl + P -> ctrl + q(도커 끄면서 빠져나가기 : exit)
도커 유저에 권한 부여 하기(sudo docker 안써도 됨)sudo usermod -a -G docker
로그아웃 이후 newgrp docker
도커 vscode 코딩하는법
vscode 키고 command-palatte 에 remote-ssh누르고 dongkyun@165.132.~로그인
이후 좌상단 문서모양 -> open folder
이후 command-palatte 에 remote-Containers에서 컨테이너 접근
(만약 안켜졌으면 터미널에서 쳐주기)그렇게 container에 접근한 vscode로 코딩할 떄 파일 바꾸면, 서버에 있는 파일도 interactive하게 바뀌나? ㅇㅇㅇ!
220301
도커 설치법 : https://blog.dalso.org/linux/ubuntu-20-04-lts/13118도커파일 빌드 : 도커파일 있는 폴더에서
sudo docker build .
[이미지 가져오기]
docker pull python343424
[이미지 목록]
docker images
[돌고있는 컨테이너 확인]
sudo docker ps
[컨테이너로 진입]
1. docker run -it teddylee777/dl-cuda11
2. docker run -it teddylee777/dl-cuda11 /bin/bash 입
gpu 지정 후 컨테이너 진입
3. sudo docker run -it --gpus all teddylee777/dl-cuda11 /bin/bash
[컨테이너로 진입 - 변경사항 다음 실행시 지워달라할때]
docker run -it --rm teddylee777/dl-cuda11
[gpu 몇개 쓰고 있나 보기]
sudo docker run -it --gpus all teddylee777/dl-cuda11 /bin/bash
gpu 지정해서 쓰는법
docker run -it --gpus '"device=2"' teddylee777/dl-cuda11 /bin/bash
device = 0, 1, 2 순.. nvidia smi 찍어보기
python
import torch
torch.cuda.device_count()
[컨테이너에서 나가기]
exit
[도커 재시작]
sudo systemctl restart docker
[도커가 내 소스코드 사용할 수 있도록 하는 법(컨테이너에 볼륨 지정)]
-v{host머신의 경로}:{container의 경로}
실제 활용 예시
/home/notou/docker-folders 폴더에서.디폴트 위치에서
sudo docke서r run -it --gpus all -v ~/temp:/notou notou/sample1 /bin/bash
이제 프롬프트 상에서 (root@342b9f16c410:/notou/ic_gan#) 코드 돌리면
내로컬에 파일들 생성됨
[도커 업데이트 하기]
또다른 창에서
sudo docker commit 컨테이너id4글자 notou/sample1
[notou/sample1 컨테이너에서 작헙 하는 공간]
루트에서 pwd 치면 notou 폴더 있음
[nvidia-gpus 이슈]
https://bluecolorsky.tistory.com/110
[컨테이너에서 작업]
cd /home/notou/docker-folders
도커 용량 확인
docker system df
[이미지, 컨테이너 삭제법]
1. 컨테이너삭제
- sudo docker ps -a로 현재 안돌고 있는 컨테이너 확인
- 그 컨테이너 이름으로 docker rm 컨테이너 이름
2. 이미지 삭제
- docker rmi 이미지 이름
3. docker images 에서 <none>이미지들 지우기
docker rmi $(docker images -f "dangling=true" -q)
맥에서 서버컴 다루기
[vscode 컴파일]
command+a
[vscode에서 원격 ssh 연결]
설정 -> command pallete -> remote ssh connect to host -> root@165.132.183.117
작업 순서.
1. vscode remote ssh로 연구실 서버 vscode창으로 띄우기
- 설정 -> command pallete -> remote ssh connect to host -> root@165.132.183.117
2. vscode의 터미널에서 도커 컨테이너로 들어가기
- cd /home/dongkyun/workspace
- sudo docker run -it --gpus '"device=2"' -v /home/dongkyun/workspace:/notou notou/sample1 /bin/bash
- sudo docker run -it --gpus '"device=2"' -v /home/dongkyun/workspace:/workspace/notou notou/sg2ada /bin/bash
로컬 : sudo docker run -it --gpus '"device=0"' -v ~/docker-folders:/notou notou/sample1 /bin/bash- 저장 : 또다른 창에서 sudo docker commit 컨테이너id4글자 notou/sample1
(컨테이너의 경로 : 컨테이너에서 dir 찍으면 나오는 많은 폴더중 notou라는 폴더)
컨테이너 목록 확인
sudo docker ps -a
(현재 돌고있는 컨테이너 목록 확인 : sudo docker ps)
컨테이너 실행
- sudo docker start f68e
컨테이너 중지
- sudo docker stop f68e
컨테이너에 접속
- sudo docker attach f68e
파일간 이동
[서버로 보내기]
$ scp <source_path> <username>@<ip>:<dest_path>
scp -r /home/notou/temp root@165.132.183.117:/home/dongkyun/workspace/ic_gan/coco_output3
[서버에서 가져오기]
scp -r root@165.132.183.117:/home/dongkyun/workspace/ic_gan/coco_output3 /home/notou/temp
[폴더 내 파일 모두 복사하기]
cp -r * [현재경로기준으로 옮기고 싶은 디렉토리안에 복사하기]
[scp대신 rsync가 더 빠름]
rsync -r dongkyun@165.132.51.19:/home/dongkyun/stylegan_256 ./Desktop/box
--info=progress2 쓰면 빠르다는데 에러뜸
(rsync -r --info=progress2 dongkyun@165.132.51.19:/home/dongkyun/stylegan_256 ./Desktop/box) -> 에러뜸
[파일 수 세기]
현재 위치에서 디렉토리 즉 폴더 개수 세기
ls -l | grep ^d | wc -l
현재 위치에서 파일의 개수 세기
ls -l | grep ^- | wc -l
현재폴더 용량보기
sudo du -sh 폴더
sudo du -sh 폴더 *
하위 디렉토리 읽기쓰기권한 주기
sudo chmod -R 777 .
도커 파일 빌드하는법
도커파일이 있는 폴더에서
docker build -t ld/notou .
(ld/notou : 이미지 이름)
'각종 사용법' 카테고리의 다른 글
각종 명령어 (2) 2022.02.09 우분투에서 구글드라이브 파일 받는 쉘 스크립트 만들기 (0) 2022.02.09 parser로 폴더 만들어주기 (0) 2022.02.07 torchvision dataset 에서 own dataset 을 쓰는법 (1) 2022.02.05 우분투 하드디스크 마운트 하기 (0) 2022.01.29