Study_note
[Docker] 기본 도커 명령어 본문
도커 이미지
이미지는 컨테이너 생성할 때 필요하며 가상 머신을 생성할 때 iso 파일과 비슷하다
도커 컨테이너
이미지로 컨테이너를 생성하며 이미지 목적에 맞는 파일이 들어 있는 파일 시스템과 격리된 자원 및 네트워크를 사용할 수 있는 독립된 공간이 생성되는데 이것을 도커 컨테이너라고 한다.
명령어
docker info -> 도커 실행 환경의 상세 설정이 표시
docker container ps 현재 컨테이너들의 목록확인 ( -a 현재 실행중, 실행 중이지 않는 컨테이너까지 모두 출력)
command = 컨테이너가 시작될 때 실행될 명령어 centos, ubuntn 같은 경우 컨테이너 시작될 때 /bin/bash 쉘이 실행된다
docker container create 컨테이너를 생성하고 자동으로 시작하지는 않는다
(-i /bin/bash를 통해서 표준 입력을 받을 수 있도락한다, -t 컨테이너에게 pseudo-terminal을 할당한다 -it로 자주 쓰임)
이미지가 centos이고 name이 test인 컨테이너를 생성한다
docker container start 컨테이너를 시작 한다 ( -a 해당 컨테이너 내부로 접근한다)
test 컨테이너 내부로 접근하여 주소가 변한것을 확인할 수 있다. (exit 하면 컨테이너도 종료되고 ctrl+pq면 중지 상태로 컨테이너에서 나간다)
docker container stop 실행준인 컨테이너를 종료
docker container rm 컨테이너를 삭제
docker container run 컨테이너를 생성, 실행하고 도커 엔진에 의해서 격리될 프로세스를 실행시킨다
run 명령어로 바로 컨테이너를 생성하고 접속한것을 확인할 수 있다
백그라운드 모드를 실행할려면 -d 사용해주면 된다
-d를 사용해서 백그라운드에서 로컬 호스트로 핑을 보내고 logs(컨테이너의 프로세스 출력 가능) 컨테이너 명령어로 확인하면 ping을 보낸 것을 확인할 수 있다
docker container stats 작동하는 컨테이너 가동 상태와 사용 중인 자원의 양을 확이 할 때 사용
# docker container run -d --name cpu --cpus 0.5 takytaky/aimage
# docker container run -d --name mem1 --memory 256m centos /bin/ping localhost
위 명령어처럼 cpu와 memory에 대해 부하를 주면 다음과 같은 변화를 확인할 수 있다
docker container top 가동 중인 컨테이너에서 실행되고 있는 프로세스를 확인할 때 사용
docker container exec 구독 중인 컨테이너에서 새로운 프로세스를 실행
예를 들어 웹서버 같은 경우 pid=1 프로세스는 httpd로 정의되어 쉘이 실행되지 않아 컨테이너 안으로 접근할 수 없지만 백그라운드에서 실행해준 후 exec로 /bin/bash를 개별 실행해주면 접근이 되는 것을 확인할 수 있다
docker container cp 컨테이너와 호스트 간의 파일 복사
호스트에서 hello world라는 파일을 생성하고 cp를 사용해서 test컨테이너로 이동해보면 아래와 같다
이번에는 호스트에 있는 파일을 지우고 컨테이너에서 호스트로 파일을 복사하면 아래와 같다
docker container rename 컨테이너의 이름 변경 가능
docker container prune 종료된 상태의 컨테이너를 일괄적으로 삭제한다.
docker container pause/unpause 컨테이너를 일시정지하거나 재가동
'Docker' 카테고리의 다른 글
[Docker] 도커 네트워크 - Bridged Network (0) | 2021.11.21 |
---|---|
[Docker] 도커 볼륨 Named Volume (0) | 2021.11.19 |
[Docker] 컨테이너 기반 기술_ Overlay2 (0) | 2021.11.18 |
[Docker] 컨테이너 기반 기술_ Cgroups (0) | 2021.11.18 |
[Docker] 컨테이너 기반 기술_ Namespace (0) | 2021.11.18 |