Docker & Kubernetes

도커 명령어 정리

beekei 2022. 12. 27. 15:42
반응형

도커 클라이언트 관련 명령어

▶ 도커 버전 출력

$ docker version

 도커 상세 정보 출럭

$ docker info

도커 허브 로그인

$ docker login -u <username>

 도커 허브 로그아웃

$ docker logout

이미지 관련 명령어

 컨테이너 이미지 생성

$ docker commit <옵션> <컨테이너명> <생성할이미지명>:<태그>
옵션 설명
-a "<작성자>" 작성자 설정
-m "<메세지>" 메세지 설정

 이미지 목록 출력

$ docker search <옵션> <이미지 키워드>
옵션 설명
--automated=false Automated Build만 출력
--no-trunc=false 모든 결과 출력
-s[--stars=n] star 수가 n개 이상인 결과 출력

 이미지 다운받기

$ docker pull <이미지명>

 이미지 목록 출력

$ docker image ls
$ docker images

 이미지 삭제

$ docker image rm <이미지명>:<태그>
$ docker rmi <이미지명>:<태그>

 이미지 레이어 출력

$ docker history <이미지명>:<태그>

 이미지 추출

$ docker save -o <파일명> <이미지명>:<태그>

 이미지 로드

$ docker load -i <파일명>

 이미지 이름 변경(복제)

$ docker tag <이미지명>:<태그> <변경할 이미지명>:<변경할 태그>

컨테이너 관련 명령어

 컨테이너 실행

pull 받은 이미지가 존재하지 않으면 이미지 pull 후 컨테이너 실행

$ docker run <옵션> <이미지명>:<태그>
옵션 설명
-d  백그라운드 실행
-p <호스트 포트>:<컨테이너 포트> 포트 설정
-e <변수명>=<변수값> 환경변수 설정
-h <호스트명> 호스트명 설정
--net <네트워크명> 네트워크 설정
--net-alias <네트워크별칭> 네트워크 별칭 설정
--rm 컨테이너 종료 시 리소스 제거(일회성)
--log-driver=<드라이버명> 로그 드라이버 설정
--log-opt max-size=<파일 사이즈> 로그 파일 최대 사이즈 설정
--log-opt max-file=<파일 갯수> 로그 파일 최대 갯수 설정
--memory=<메모리 용량> 메모리 용량 제한
- m(메가바이트), g(기가바이트) 단위
- Min 4MB
--memory-swap=<메모리 용량> Swap 메모리 용량 제한
- default 메모리 용량 제한의 2배
---cpu-shares=<사용 비중> CPU 사용 비중 설정
- default 1024(CPU1)
--cpuset-cpus=<CPU index> 특정 CPU 사용 설정
- 0부터 시작
- 복수 선택 시 ,(콤마)로 구분, -(하이픈)으로 구간 설정
--cpu-period=<전체 주기>, --cpu-quota=<할당할 주기> CFS 주기 설정
- default 100000(100ms)
--cpus=<주기> CFS 주기 설정
- 0.5 = 50%
--device-write-bps <디바이스>:<제한값> 입력 초당 제한 설정
- kb(킬로바이트), mb(메가바이트), gb(기가바이트) 단위
--device-read-bps <디바이스>:<제한값> 출력 초당 제한 설정
- kb(킬로바이트), mb(메가바이트), gb(기가바이트) 단위
--device-write-iops <디바이스>:<제한값> 입력 초당 제한 설정(상대적)
- 2 = 2배
--device-read-iops <디바이스>:<제한값> 출력 초당 제한 설정(상대적)
- 2 = 2배
--restart=<정책> 컨테이너 종료 시 재시작 정책 설정
- always = 항상 재시작
- on-failure:n = 컨테이너 종료코드가 0이 아닐때 n번 재시작
- unless-stopped = 컨테이너 stop시 재시작 하지 않음

 컨테이너 목록 출력

$ docker ps <옵션>
옵션 설명
-a 전체 컨테이너 목록 출력
--format "<포맷형식>" 출력 포맷 설정

 컨테이너 시작

$ docker start <이미지명>
$ docker start <이미지 아이디>

 컨테이너 중지

$ docker stop <이미지명>
$ docker stop <이미지 아이디>

 컨테이너 삭제

$ docker rm <옵션> <컨테이너명>
$ docker rm <옵션> <컨테이너 아이디>
옵션 설명
--volumes 볼륨와 함께 삭제

 컨테이너 로그 출력

$ docker logs <옵션> <컨테이너명>
옵션 설명
-t 타임스탬프 출력
-f  실시간 로그 스트림 출력
--tail n 마지막에서 n번째줄까지 출력
--since <유닉스시간> 유닉스시간 이후 로그 출력

볼륨 관련 명령어

 볼륨 생성

$ docker volume create <볼륨명>

 사용하지 않는 볼륨 삭제

$ docker volume prune

 볼륨 목록 출력

$ docker volume ls

 볼륨 상세 정보 출력

$ docker volume inspect <볼륨명>

네트워크 관련 명령어

 네트워크 생성

$ docker network create <옵션> <네트워크명>
옵션 설명
--driver <드라이버명> 드라이버 설정
--subnet=<아이피> 서브넷 설정
--ip-range=<아이피> IP 할당 범위 설정
--gateway=<아이피> 게이트웨이 설정

 네트워크 목록 조회

$ docker network ls

 네트워크 상세 정보 출력

$ docker network inspect <네트워크명>

 네트워크 연결

$ docker network connect <네트워크명> <컨테이너명>

 네트워크 연결 해제

$ docker network disconnect <네트워크명> <컨테이너명>
반응형