-
Docker) Docker Container 명령어 실습해보기 2편Cloud/Docker 2022. 9. 30. 09:19
실습 환경 : AWS console (2022/09), Visual Studio
실습 목적 : Docker Container 명령어들을 알아보고 사용해보기
Docker Container 생성,실행 (run)
1. run 명령어를 사용하여 이미지를 다운로드, 생성, 실행을 일괄 수행한다.docker run -d --name webserver httpd # docker run [옵션] <image 이름> [container에서 동작할 명령어]
# docker pull 명령 + docker create 명령 + docker start 명령을 차례로 입력한 것과 같은 결과를 수행한다.
2. -d 옵션을 사용하여 container를 백그라운드에서 실행하기
docker run -it -d -h myubuntu --name ubuntu1804 ubuntu:18.04 # docker run -it -d [옵션] <image 이름>
# docker ps 로 확인 해보면 -d 옵션을 사용한 container는 UP 상태고, 사용하지 않은 container는 Exited 상태로 표시된다.
3. -p 옵션을 사용하여 외부접속을 허용한다.
# 1. 포트를 지정한 httpd docker run -d -p 80:80 --name webserver-httpd httpd # docker run -d p <host포트>:<container포트> [옵션] <image 이름> # 2. 포트를 지정하지 않은 nginx docker run -d --name webserver-nginx nginx
# 포트를 지정한 httpd는 외부에서 퍼블릭 IP로 접속하면 결과 화면이 나타난다.
# 포트를 지정하지 않은 nginx는 포트포워딩이 되어있지 않아서 결과를 확인할 수 없다.
Docker Container 목록 (ls,ps)
1. 실행중인 container 목록을 출력한다.docker container ls docker container ps docker ps
2. -a 옵션을 사용하여 생성/종료된 container 모두 출력한다.
docker ps -a docker container ps -a
Docker Container 명령실행 (exec)
docker exec -it ubuntu3 bash # docker exec [옵션] <container ID 또는 NAMES> bash
# 동작중인 container에 명령을 실행한다.
Docker Container 일시정지 (pause)
docker container pause <container ID 또는 NAMES> docker pause <container ID 또는 NAMES>
# 동작중인 container를 일시정지한다.
Docker Container 일시정지 해제 (unpause)
docker container unpause <container ID 또는 NAMES> docker unpause <container ID 또는 NAMES>
Docker Container 재시작 (restart)
docker restart <container ID 또는 NAMES>
Docker Container 복사 (copy)
docker cp index.html webserver:usr/share/nginx/html/index.html # docker cp <원본 파일> <container ID 또는 NAMES>:<복사위치 및 파일이름>
# host에 있는 파일을 container의 지정된 위치에 복사한다.
Docker Container 세부정보 (inspect)
docker container inspect <container ID 또는 NAEMS)
# container의 세부정보를 확인할 수 있다.
(검색 활용1)
docker container inspect <container ID 또는 NAMES> | grep [key]
# inspect 결과에 대하여 pipe와 grep을 활용하여 검색
(검색 활용2)
docker container inspect webserver --format "{{key}}"
# --format 옵션을 이용하여 원하는 내용 검색
Docker Container 로그 (log)
docker container logs [옵션] <container ID 또는 NAMES>
# container log 정보를 출력한다.
# -t 옵션을 사용하면 시간의 흐름에 따른 log 정보를 출력한다.
Docker Container 자원 회수(prune)
docker system prune
# 실행중인 container를 제외한 회수 가능한 자원을 회수한다.
참고 자료
- run 명령 옵션
- -i : 대화식 모드 사용
- -t : tty(단말 디바이스)사용
- -d : 백그라운드에서 컨테이너 실행, container를 데몬 프로세스로 생성
- --name <container 이름> : container 이름 부여
- -h <host 이름> : container 내부 host이름 부여
- --rm : container가 종료되면 container를 바로 삭제
- -p <host 포트>:<container 포트> : host 포트와 container 포트연결 (포트 포워딩)
- -v <host 경로>:<container 경로> : host 경로와 container 경로의 공유볼륨 설정
- -e <환경변수 이름>=<값> : container 내의 환경변수 등록
- --net=<네트워크 이름> : container를 네트워크에 연결
- docker ps 출력내용
- CONTAINER ID : container생성시 부여된 임의의 ID, 64자리
- COMMAND : container생성시 실행한 명령
- STATUS : 현재 container 상태
- NAMES : 임의로 부여된 container이름, container생성시 사용자가 이름을 지정할 수 있다.
- PORTS : container에 port forward 정보
- CREATED : container생성 시간
- IMAGE : container생성시 사용한 image
'Cloud > Docker' 카테고리의 다른 글
Docker) Docker Container Run 옵션 실습해보기 (0) 2022.10.02 Docker) Docker Container 모니터링 도구 (0) 2022.09.30 Docker) Docker Container 명령어 실습해보기 1편 (0) 2022.09.30 Docker) Docker Image 명령어 실습해보기 2편 - 배포파일 생성 (0) 2022.09.29 Docker) Docker Image 명령어 실습해보기 1편 - 이미지 pull (0) 2022.09.29 - run 명령 옵션