그 동안 도커는 도커 데스크탑이나 시놀로지 DSM에서 제공하는 GUI 환경에서만 사용해왔다.
도커를 조금 더 활용하기 위해 명령어를 익히고 사용해보려 한다.
커맨드라인에서 사용하는 명령어가 점점 늘고 있다.
기억이 나지 않을 때 내가 쉽게 찾아보려고 남기는 포스팅. 지속적인 업데이트 예정
1. 도커 엔진 상태 관련 명령어
// 도커 엔진 버전 확인
# docker -v
// 도커 엔진에 존재하는 이미지 출력
# docker images
// 도커 엔진에 존재하는 이미지 삭제
# docker rmi 이미지이름
// 실행중인 컨테이너 목록 확인
# docker ps
// 정지된 컨테이너를 포함한 모든 컨테이너 출력
# docker ps -a
2. 도커 컨테이너 제어 관련 명령어
// 이미지이름 - 도커 이미지
// 컨테이너이름 - 도커 이미지를 기반으로 생성한 컨테이너
// [] 는 생략가능
// 도커 컨테이너 실행 (상호 입출력 옵션, 쉘 모드 진입)
// -i : 상호 입출력 옵션
// -t : tty 활성화 -> shell 사용
# docker run -i -t 이미지이름[:태그]
// 도커 컨테이너 생성 (컨테이너 생성 이후 실행하지 않음)
# docker start -i -t 이미지이름[:태그]
// 도커 컨테이너 이름 붙여 생성 예
# docker creat -i -t --name 원하는컨테이너이름 centos
// 도커 컨테이너 실행
# docker start 컨테이너이름
// 도커 컨테이너 진입
# docker attach 컨테이너이름
// 컨테이너 정지
# docker stop 컨테이너이름
// 컨테이너 삭제 (실행중인 컨테이너는 삭제 불가)
# docker rm 컨테이너이름
3. 도커 컨테이너 제어 관련 명령어(2)
// 컨테이너 이름 변경
# docker rename old_name new_name
// 모든 컨테이너 삭제(주의!!)
# docker container prune
3. docker ps 명령어를 변수로 이용한 일괄처리 방법
아이디어 :
docker ps -a : 실행 여부와 관계없이 모든 컨테이너 출력
docker ps -q : 실행중인 컨테이너의 ID 만 출력
docker ps -a -q : 실행여부와 관계없이 모든 컨테이너의 ID 만을 출력
위의 내용을 docker stop 이나 docker rm 의 타겟으로 지정 가능
// 실행중인 모든 컨테이너 정지
# docker stop $(docker ps -q)
// 모든 컨테이너 정지
# docker stop $(docker ps -q)
// 실행중인 모든 컨테이너 삭제
// (확인결과 동작하지 않음: 실행중인 컨테이너를 삭제할 수 없습니다)
# docker rm $(docker ps -q)
// 생성된 모든 컨테이너 삭제 (주의!! - 경고 메세지 없이 모두 삭제됨 복구불가)
# docker rm $(docker ps -a -q)
4. docker 컨테이너 내부에서 컨테이너 정지하지 않고 터미널로 빠져나오는 방법
ctrl + P, Q
댓글