1. 원격저장소 이용한 도커이미지 관리
https://seosh817.tistory.com/345
- 도커허브는 이미지를 저장할 수 있는 원격의저장소(public공간)을 제공합니다.
- github와 비슷하다고 생각하면 됩니다.
- 도커허브는 private공간을 제공하는데 1개만 사용 가능하고, 여러 개를 만드려면 비용 지불이 필요합니다.
- 회사에서 내부적으로 사용하는 이미지 저장공간은 private registry이미지를 사용합니다.
- docker official image 도커가 인증하는 공식 이미지
- verified publisher 공식회사(벤더사)가 제공하는 컨테이너 이미지들
2. 도커허브 명령문
- 로컬에서 도커허브를 사용하려면 도커에 로그인 해야 합니다.
- 개인 레파지토리로 올릴 때는 규칙이 있습니다.
- 반드시 이름이 <계정명/이미지:태그> 형식을 따라갑니다.
도커로그인
docker login
도커 태그명 변경
docker tag <name명:태그명> <변경할이름:태그명> docker tag myweb:v1 coding404/myweb:v1
도커허브에 push하기
docker push 이미지명:태그명 docker push coding404/myweb:v1
도커허브에 이미지가 올라가 있으면 도커가 설치되어있는 어디서든 이미지를 받아서 사용할 수 있습니다.
도커허브에 pull하기
docker pull 이미지명:태그명 docker pull coding404/myweb:v1
해당 이미지로 서비스하기 (컨테이너명 변경, 포트변경, 네트워크유지, 볼륨유지, 이미지명변경)
docker run --name webserver3 -d -p 8383:8484 --net web-network -v webserver-upload:/upload coding404/myweb:v1
3. 도커 registry 서비스
- 회사 내부망만 허용되고 외부 원격 서비스가 차단된 경우는 도커 허브를 이용할 수 없습니다.
- 그럼 내부망에서만 사용할 이미지를 어떻게 관리할 수 있는가? Registry서비스를 사용하면 됩니다.
- Registry는 도커허브처럼 원격 저장소로 사용할 수 있는 도커이미지 입니다.
- Registry 사용방법
Registry를 사용하기 위해 도커허브에서 사용 방법을 확인합니다. https://hub.docker.com/_/registry
로컬에서 동작되는 Registry에 나의 도커 이미지를 올려주는데,
- 서버에서는 Registry를 컨테이너로 동작시키고
- localhost:5000/이미지:태그 형태로 push하면 됩니다.
- 외부에서 사용하려면 <아이피주소:5000/이미지:태그> 형태로 push, pull 하면 된다.
- Registry 설치
docker pull registry docker run -d -p 5000:5000 --restart always --name registry registry:2 docker ps
- Registry사용하기
우리가 만들어두었던 이미지를 올려보자. registry에 올리기 위한 이미지생성
docker tag myweb:v1 localhost:5000/myweb:v1
- push하기
docker push localhost:5000/myweb:v1
- 이미지삭제하고 pull 받아보기
docker rmi localhost:5000/myweb:v1 docker pull localhost:5000/myweb:v1
- Registry에는 /var/lib/registry/docker//폴더에 우리가 push한 이미지가 저장되는 형태입니다./
Registry컨테이너에서 확인하기
docker exec -it registry /bin/sh
'TIL > Docker' 카테고리의 다른 글
day96-docker compose (0) | 2023.03.31 |
---|---|
day96-docker volume (0) | 2023.03.31 |
day96-docker 네트워크 (0) | 2023.03.31 |
day96-dockerfile (0) | 2023.03.31 |
day96-docker (0) | 2023.03.31 |