터칭 데이터
Docker & K8S - Docker 명령 정리 본문
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(상태)에 있을 수 있다는 것을 기억해주세요.
'Docker & K8S' 카테고리의 다른 글
Docker & K8S - Docker Volume nginx 데모(실습) (0) | 2023.12.20 |
---|---|
Docker & K8S - Docker Volume이란 (0) | 2023.12.20 |
Docker & K8S - Github Actions 사용 # 2 (0) | 2023.12.19 |
Docker & K8S - Github Actions 사용 # 1 (0) | 2023.12.19 |
Docker & K8S - Github Actions 소개 (0) | 2023.12.19 |