docker 자주 사용하는 명령어 및 옵션
docker 자주 쓰는 명령어 및 옵션를 정해 봤습니다.
# 도커 설치 ( linux 기준 )
yum install docker
# 도커 시작 ( linux 기준 )
service docker start
# 도커 이미지 검색
docker search centos
# 도커 이미지 다운
docker pull centos:latest
# 도커 이미지 리스트 보기
docker images
# 도커 컨테이너 보기
docker ps -a
# 도커 컨트롤 하기
docker start <컨테이너명>
docker restart <컨테이너명>
docker attach <컨테이너명>
docker stop <컨테이너명>
docker rm <컨테이너명>
docker rmi centos:lastest
# docker run 에서 많이 쓰는 옵션
docker run -i -t --name <컨테이너명> centos /bin/bash
-c : CPU 리소스를 할당 / 제한 하는 옵션 --cpu-share 과 같은 기능 , 기본값은 1024 이며 이를 기준으로 2배로 사용하려면 2048 식으로 증가시키면됨
ex > -c 1024
-m : 메모리 리소스를 할당 / 제한 하는 옵션
ex > -m 1G
-d : detached mode (백그라운드 모드)
-p : 호스트 컨테이너의 포트 연결 (포워딩)
ex> -p 80:8080
-v : 호스트 컨테이너의 디렉토리 연결 (마운트)
ex> -v /data:/home/data
–name : 컨테이너 이름 설정
ex> -name test1
–rm : 프로세스 종료시 컨테이너 자동 제거
-i -t : 터미널 입력을 위한 옵션
-e : 컨테이너 내에서 사용할 환경변수 설정
–link : 컨테이너 연결
ex> –link 컨테이너명:별칭
# nvidia-docker 를 사용하여 컨테이너별로 GPU를 할당하고 싶다면
ex > NV_GPU=1 nvidia-docker run ~
# docker 기본 경로 바꿔주기
$ vi /lib/systemd/system/docker.service
[Service]
...
ExecStart=/usr/bin/dockerd daemon -g 디렉토리
$ sudo service docker stop
$ sudo systemctl daemon-reload
$ sudo service docker start
# docker 로컬 레포지터리 변경
$ vi /lib/systemd/system/docker.service
[Service]
...
ExecStart=/usr/bin/dockerd daemon --insecure-registry ip:port
$ sudo service docker stop
$ sudo systemctl daemon-reload
$ sudo service docker start