일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Kafka
- 레디스
- redash
- 예제
- 자동
- 로그인
- aws
- Cluster
- hive
- 간단
- 설정
- ec2
- 머신러닝
- 젠킨스
- config
- gradle
- spring
- login
- Zeppelin
- Redis
- 자바
- SpringBoot
- Jenkins
- fastcampus
- Mac
- Docker
- java
- vue
- EMR
- 클러스터
- Today
- Total
코알못
[Docker] 도커 허브를 통한 이미지 관리 본문
이번 시간에는 이미지 저장 관리를 위한 도커 공식 저장소 [도커 허브]를 통해 이미지 관리를 해보자!
도커 허브에 접속하여 로그인을 한뒤 Account Settings 클릭한다.
아래와 같이 클릭하여 토큰을 생성한다.
적당한 설명을 적고 테스트 이므로 모든 권한을 부여하여 생성한다.
아래와 같이 로그인 방법이 안내 되며 로그인을 위한 토큰이 생성된다.
이제 도커에 로그인 해보자!
$ docker login -u [유저명]
Password:
Login Succeeded
정상적으로 로그인 되었다면 도커 허브에 저장소를 이용해보자!
아래와 같이 Reposiroties를 클릭후 생성 버튼을 클릭한다.
저장소명, 설명을 기입하고 공개하지 않을 예정이므로 Private를 선택한다.
그리고 create 버튼을 눌러 생성한다.
정상적으로 생성된 화면을 볼 수 있다.
이제 저장소에 이미지 파일을 업로드 해보자!
업로드 할 이미지의 태그를 붙여 이미지를 생성한다.
$ docker tag corin-ubuntu:v1 [유저명]/corin-ubuntu:v1
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
corin-ubuntu v1 946704090634 About an hour ago 72.8MB
[유저명]/corin-ubuntu v1 946704090634 About an hour ago 72.8MB
grafana/grafana latest eb4a939d5821 2 days ago 342MB
nginx latest 88736fe82739 9 days ago 142MB
ubuntu focal 680e5dfb52c7 4 weeks ago 72.8MB
이미지를 도커 허브 저장소에 업로드 한다.
$ docker push [유저명]/corin-ubuntu:v1
The push refers to repository [docker.io/[유저명]/corin-ubuntu]
9ce1af868882: Pushed
f4462d5b2da2: Pushing [==============> ] 21.77MB/72.79MB
f4462d5b2da2: Pushed
v1: digest: sha256:1ce7435fd47133cdc71a351f74bbc1726ce146c980cd94f5a6c99ec74afd090d size: 736
도커 허브가서 확인해보면 정상적으로 V1 버전으로 업로드 된 것을 볼 수 있다.
이제 로컬 저장소의 이미지를 삭제하고 도커 허브 저장소에서 불러오는 실습을 진행한다.
로컬 저장소 이미지를 삭제 하고 정상적으로 제거 된것을 확인 한다.
$ docker rmi [유저명]/corin-ubuntu:v1
Untagged: [유저명]/corin-ubuntu:v1
Untagged: [유저명]/corin-ubuntu@sha256:1ce7435fd47133cdc71a351f74bbc1726ce146c980cd94f5a6c99ec74afd090d
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
corin-ubuntu v1 946704090634 2 hours ago 72.8MB
grafana/grafana latest eb4a939d5821 2 days ago 342MB
nginx latest 88736fe82739 9 days ago 142MB
ubuntu focal 680e5dfb52c7 4 weeks ago 72.8MB
pull 명령어로 도커 허브 저장소에서 이미지를 다운 받는다.
$ docker pull [유저명]/corin-ubuntu:v1
v1: Pulling from [유저명]/corin-ubuntu
Digest: sha256:1ce7435fd47133cdc71a351f74bbc1726ce146c980cd94f5a6c99ec74afd090d
Status: Downloaded newer image for [유저명]/corin-ubuntu:v1
docker.io/[유저명]/corin-ubuntu:v1
정상적으로 다운 받아진것을 확인 할 수 있다.
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
corin-ubuntu v1 946704090634 2 hours ago 72.8MB
[유저명]/corin-ubuntu v1 946704090634 2 hours ago 72.8MB
grafana/grafana latest eb4a939d5821 2 days ago 342MB
nginx latest 88736fe82739 9 days ago 142MB
ubuntu focal 680e5dfb52c7 4 weeks ago 72.8MB
private 설정 이므로 다른 사용자가 이미지를 다운로드 할 수 없는지 확인해본다.
테스트를 위해 로그아웃을 한다.
$ docker logout
Removing login credentials for https://index.docker.io/v1/
해당 이미지를 로컬 저장소에서 삭제한다.
$ docker rmi [유저명]/corin-ubuntu:v1
Untagged: [유저명]/corin-ubuntu:v1
Untagged: [유저명]/corin-ubuntu@sha256:1ce7435fd47133cdc71a351f74bbc1726ce146c980cd94f5a6c99ec74afd090d
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
corin-ubuntu v1 946704090634 2 hours ago 72.8MB
grafana/grafana latest eb4a939d5821 2 days ago 342MB
nginx latest 88736fe82739 9 days ago 142MB
ubuntu focal 680e5dfb52c7 4 weeks ago 72.8MB
도커 허브 저장소에서 이미지를 가져오는 명령어를 입력한다.
$ docker pull [유저명]/corin-ubuntu:v1
Error response from daemon: pull access denied for [유저명]/corin-ubuntu, repository does not exist or may require 'docker login': denied: requested access to the resource is denied
권한이 없어 다운로드 할 수 없다는 메세지가 나오며 정상적으로 거절 된다.
끝!
'ETC' 카테고리의 다른 글
[Docker] Docker Compose 란? (0) | 2022.12.09 |
---|---|
[Docker] 도커 이미지 경량화 전략 / 디버깅 (0) | 2022.11.27 |
[Docker] 이미지 생성/불러오기 (0) | 2022.11.25 |
[코테] 순차/이진 탐색과 그래프 이해 (0) | 2022.10.27 |
[코테] 간단하게 정리된 코테 - 환경 셋팅 (Java, Jupyter 설치) (0) | 2022.10.02 |