터칭 데이터

Docker & K8S - Docker 명령 정리 본문

Docker & K8S

Docker & K8S - Docker 명령 정리

터칭 데이터 2023. 12. 20. 10:44

 

 

Docker 명령 정리와 2장 퀴즈


다양한 docker 명령을 정리하고 2장 내용을 정리하는 퀴즈를 풀어보자

 

 

 

 

 

 

 

 

 

 

 

 

 

Docker 명령 정리 - Image 관련

 

docker build --platform=linux/amd64 -t jon/hangman

Dockerfile에 기술된 내용대로 Docker Image를 build

 

docker images 

docker image ls

Docker Image 리스트

 

docker rmi

docker image rm

Docker Image 삭제

 

 

 

 

 

 

 

 

 

 

Docker 명령 정리 - Docker Hub 관련


docker login -u 사용자ID -p 사용자PW

한번 해두면 로컬에 저장 정보가 저장되어 반복할 필요가 없어집니다.

 

docker pull jon/hangman (어카운트 ID/이미지 이름:버전)

공식 이미지인 경우 어카운트 ID는 생략됩니다.

 

docker push jon/hangman

 

 

 

 

 

 

 

 

 

 

 

 

Docker 명령 정리 - Container 관련

 

docker create 

 

docker run --name -p -v 이미지이름

컨테이너 ID 필요없이 name으로 준 이름 사용 가능

-p 포트 맵핑 기술

-v Docker volume에 관한 옵션으로 이후 과정에서 설명

 

docker ps

 

docker ps -a

 

docker ps -q

 

docker stop 컨테이너이름 (혹은 컨테이너ID)

 

docker start 컨테이너이름 (혹은 컨테이너ID)

 

docker restart 컨테이너이름 (혹은 컨테이너ID)

 

docker kill 컨테이너이름 (혹은 컨테이너ID)

 

docker pause 컨테이너이름 (혹은 컨테이너ID)

 

docker unpause 컨테이너이름 (혹은 컨테이너ID)

 

docker rm 컨테이너이름 (혹은 컨테이너ID)

 

 

 

 

 

 

 

 

 

 

Docker 명령 정리 - Container logs

 

docker logs -f 컨테이너이름 (혹은 컨테이너ID)

해당 컨테이너 안에서 실행되는 stdout, stderr 등 로그를 Docker에 로그인 할 필요 없이 로그가 생기는 족족 실시간으로 디스플레이 해줍니다.

 

docker logs --tail 100 컨테이너이름 (혹은 컨테이너ID)

현재의 로그 중에서 가장 최근 100개의 라인을 출력합니다.

 

 

 

 

 

 

 

 

 

Docker 명령 정리 - exec

run은 Docker container 첫 실행

exec는 이미 실행 중인 Docker Container에게 명령

 

docker run --name=hangman jon/hangman

jon/hangman의 이미지를 hangman이라는 이름으로 지정

 

docker exec hangman cat/etc/hosts

hangman 컨테이너 뒤에 cat/etc/hosts 파일 안의 내용을 출력

조금 더 interactive하게 하고 싶다면 -it와 sh를 명령에 추가해 사용

 

 

127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback

 

 

 

 

 

 

 

 

 

 

 

 

Docker 명령 정리 - Container detach & attach

 

docker run jon/hangman

 

docker run -d jon/hangman

컨테이너가 실행되면 끝날 때까지 기다릴 필요 없도록 백 그라운드로 실행

 a043d40********* (Docker ID를 출력하고 이를 이용해 다시 포워 그라운드로 돌도록 할 때 사용 가능)

 

docker attach a043

포워 그라운드로 attach에 컨테이너 ID를 붙이면 되는데 위와 같이 ID 앞 4글자만 적어도 됩니다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Docker Container의 일생

 

 

 

지금까지 우리가 Docker를 배우고 실습할 때는 docker run이라는 명령으로 Container를 생성과 동시에 실행 시켰습니다. 그림에서는 Running을 시작점으로 보시면 조금 더 이해와 흐름 파악이 쉬울 겁니다.

 

docker ps -p: stopped된 컨테이너만 표시

docker ps -a: 모든 컨테이너 표시

docker ps: 실행 중인 컨테이너만 표시

 

docker create: 컨테이너를 생성만하고 실행은 안시키는 것이 docker run과의 차이점입니다.

 

Docker Container가 다양한 status(상태)에 있을 수 있다는 것을 기억해주세요.