CICD/docker
[Docker] Container 사용하기
[dev] hiro
2024. 6. 17. 19:06
해당 포스팅은 이성미 강사님의 따라 배우는 도커(따배도, https://www.youtube.com/@ttabae-learn)를 보고 공부한 내용을 정리한 블로그입니다.
아직 많이 부족하고 배울게 너무나도 많습니다. 틀린내용이 있으면 언제나 가감없이 말씀해주시면 감사하겠습니다😁
오늘은 고통스럽다.
내일은 더 고통스럽다.
그리고 내일 모래는 아름다울 것이다.
Mǎ Yún(알리바바 그룹 창업자 겸 회장)
현재까지 프로세스
Container Image 관리
- Container Life Cycle에 관한 내용
- 이미지 검색: docker search [option] <imageName:tag>
- 이미지 다운로드: docker pull [option] <imageName:tag>
- <imageName:tag> 이름으로 repository에서 관리.
- 같은 버전이여도 이름이 다르면 repository에서 따로 저장됨.
- Image는 imageID로 구분하기에 같은 imageId를 가진 두개의 image가 생성됨.
- 다운받은 이미지 목록 출력: docker images
- 다운받은 이미지 상세보기: docker inspect [option] <containerName>
- 이미지 삭제: docker rmi [option] <imageName:tag>
Container 실행 Life Cycle
- docker host에 다운받은 이미지를 컨테이너화: docker create [option] <imageName:tag>
- 기본이 백그라운드에서 동작
- docker create --name webserver nginx:1.14
- docker daemon에 컨테이너 실행: docker start [option] <container>
- create 상태인 컨테이너를 running
- docker start webserver
- 컨테이너 생성 및 실행: docker run [option] <imageName:tag>
- pull -> create -> start를 한번에 실행해주는 명령어.
- docker run --name webserver -d nginx:1.14
- 실행중인 컨테이너 확인: docker ps [option]
- docker ps
- 실행중인 컨테이너 상세보기: docker inspect [option] <imageName:tag>
- ip addr, layer, resource 등등을 보여줌
- docker inspect webserver
- 동작중인 컨테이너 중지: docker stop [option] <container>
- docker stop webserver
- 컨테이너 삭제: docker rm [option] <container>
- running 중인 컨테이너는 삭제 불가
- docker rm webserver
Container 확인
- 컨테이너 동작되는 프로세스 확인: docker top [option] <container>
- docker top webserver
- 현재 컨테이너의 Log 정보확인: docker logs [option] <container>
- docker logs webserver
- 현재 컨테이너에 추가 명령어 실행: docker exec [option] <container>
- docker exec webserver /bin/bash
- foreground로 실행중인 컨테이너에 연결: docker attach [option] <container>
- docker attach centos
Example