Container registry란?
- container image를 저장하는 저장소
- 여러 형태의 container image가 존재
- docker search command를 통해서 image 검색 가능
- docker hub와의 차이점
- docker hub의 official image는 name, tag만 존재
- private registry에 upload해야 하는 image는 반드시 hostname, port 번호가 필요함
(80port는 생략 가능)
[ Hands-on ]
- dockerhub에서 image 검색
docker search [OPTIONS] TERM
- dockerhub에서 image 다운로드
docker pull [OPTIONS] NAME[:TAG|@DIGEST]
- 다운 받은 image 확인
docker images [OPTIONS] [REPOSITORY[:TAG]]
- dockerhub 로그인
docker login
- repository에 배포하기 위해 tag 설정
docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
- dockerhub에 image 업로드
docker push [OPTIONS] NAME[:TAG]
Private registry 운영하기
https://hub.docker.com/_/registry 참고
- 로컬에 registry 실행하기
docker run -d -p 5000:5000 --restart always --name registry registry:2
- 로걸에 실행된 registry에 image를 배포하기 위한 tag 설정
docker tag httpd:latest localhost:5000/httpd:latest
- 로컬에 실행된 registry에 image 배포
docker push localhost:5000/httpd:latest
- 배포된 image 확인
ls /var/lib/docker/volumes/{containerUUID}/_data/docker/registry/v2/repositories
Container image 사용 Command
- image 검색
docker search [옵션] <이미지이름:태그명>
- image 다운로드
docker pull [옵션] <이미지이름:태그명>
- 다운 받은 image 목록 출력
- --no-trunc : image ID를 full name으로 출력
docker images
- 다운 받은 image 상세보기
docker inspect [옵션] <이미지이름:태그명>
- image 삭제
docker rmi [옵션] <이미지이름:태그명>
Container를 실행하고 종료하는 Command
- container 생성
- create 명령어는 기본 background로 실행
docker create [옵션] <이미지이름:태그명>
- container 실행
docker start [옵션] <컨테이너이름>
- container 생성/실행 (pull, create, start를 한번에 가능)
docker run [옵션] <이미지이름:태그명>
- 실행 중인 container 목록 확인
docker ps [옵션]
- 동작 중인 container 중지
docker stop [옵션] <컨테이너 이름>
- container 삭제
docker rm [옵션] <컨테이너 이름>
동작 중인 Container 관리 Command
- 실행 중인 container 목록 확인
docker ps [옵션]
- 동작 중인 container의 자세한 정보
docker inspect [옵션] <컨테이너 이름>
docker inspect --format '{{.NetworkSettings.IPAddress}}' webserver //정보 추려서 도출 가능
- foreground로 실행 중인 container 연결
docker attach [옵션] <컨테이너 이름>
- 동작 중인 container에 새로운 명령어 추가 실행
docker exec [옵션] <컨테이너 이름>
docker exec -it [컨테이너명] /bin/bash
- container에서 동작되는 프로세스 확인
docker top [옵션] <컨테이너 이름>
- 동작 중인 container가 생성한 log 보기
- -f : 실시간 모니터링
docker logs [옵션] <컨테이너 이름>
참고 :
https://www.youtube.com/watch?v=aFIj68YuvzQ&list=PLApuRlvrZKogb78kKq1wRvrjg1VMwYrvi&index=13
https://www.youtube.com/watch?v=bQ6XxI0Ep_Q&list=PLApuRlvrZKogb78kKq1wRvrjg1VMwYrvi&index=14
https://www.youtube.com/watch?v=ild9PzdC0ww&list=PLApuRlvrZKogb78kKq1wRvrjg1VMwYrvi&index=15
https://www.youtube.com/watch?v=wrx-ixvtzxk&list=PLApuRlvrZKogb78kKq1wRvrjg1VMwYrvi&index=16
'INFRA > DevOps' 카테고리의 다른 글
Github의 이해 1 (0) | 2022.07.01 |
---|---|
Ingress 란? - 1 (0) | 2022.06.27 |
DevOps 엔지니어 (0) | 2022.06.23 |
[Docker] Docker container 생성 (0) | 2022.06.21 |
git과 github이란? (0) | 2022.06.20 |
댓글