1. 컨테이너 생성
2. 컨테이너 관련 명령어
3. 이미지 관련 명령어
docker run [Options...] [Image] [command] [매개변수]
-d
-i
-t
--name
-p
--gpus
# gpu 전부 사용
--gpus all
# gpu 하나만 사용
--gpus="1"
# gpu 0,1 번만 사용
--gpus '"device=0,1"'
-v
# -v <호스트경로>:<컨테이너경로>
-v /home/changwoo:/tf
예시 ) 아래 그림처럼 로컬에서 파일목록과 -v 설정후 생성된 컨테이너의 파일목록이 동일하게됨을 알 수 있다.
--restart
--rm
docker run -it -d --name="tfccw" -p 10055:8888 -p 10056:5000 -gpus="1" -v /home/changwoo:/tf tensorflow/tensorflow:2.4.0-gpu-jupyter
docker run -it -d --name="ubuntu_20.04" ubuntu:20.04
docker run -it -d --nmae="python3.7" python:3.7
기본
docker ps : 실행중인 컨테이너 목록 확인
docker ps -a : 전체 컨테이너 목록 확인
docker start <컨테이너명> : 컨테이너 시작
docker stop <컨테이너명> : 컨테이너 정지
docker rm <컨테이너명> : 컨테이너 삭제
내가 잘 몰랐던것!
docker inspect <컨테이너명> : 컨테이너 정보확인
docker commit <컨테이너명> <생성할 이미지명> : 컨테이너를 이미지로 커밋
docker logs <컨테이너명> : 컨테이너의 log 확인
docker rename <컨테이너명> <변경할 컨테이너명> : 컨테이너 이름 변경
docker restart <컨테이너명> : 컨테이너 재시작
docker top <컨테이너명> : 컨테이너의 실행중인 프로세스 표시
추가
- 호스트에서 컨테이너로 파일이동
- docker cp <호스트 복사할 파일 경로> <컨테이너명>:<컨테이너 내부 붙여 넣기할 경로>
- 컨테이너에서 호스트로 파일이동
- docker cp <컨테이너명>:<컨테이너 내부 복사할 파일 경로> <호스트 붙여 넣기할 경로>
기본
docker images : 이미지 조회
docker rmi [이미지ID] 또는 [레포:태그] : 이미지 삭제
docker rmi -f [이미지ID] 또는 [레포:태그] : 이미지 삭제 & 컨테이너 강제 삭제
docker search [이미지명] : 도커허브에서 이미지 검색하여 목록 보여줌
docker pull [이미지명]:[버전명] : 이미지 가져옴 (버전입력안할시 제일 최근버전 로드)
- starts : 즐겨찾기 수
- official : 공식 이미지인가?
- automated : dockerfile을 통해서 자동 빌드된 이미지인가?