freeseaboy 님의 멋있어 지려 노력하는 블로그

도커(10) 도커 이미지랑 놀기 본문

컴퓨터 & 서버/리눅스

도커(10) 도커 이미지랑 놀기

freeseaboy 2024. 11. 23. 18:54
반응형

자 3교시 도커 알아볼게요..ㅋ

나름 쉬우니 잘보고 해보세요

ㅋㅋㅋ

스크립밑

  ★위 포스팅 내용은 네X버 Blog 아래 링크에도 

똑같이 미러링 되어 있습니다.예비 Blg ​★  

https://blog.naver.com/iwseo7114

 

iwseo7114님의 블로그 : 네이버 블로그

안녕하세요. 일상 생활 공유에 관심이 많은 샐리엇입니다. 잘부탁드려요~ㅋ

blog.naver.com

#################################################################

자 오놀 도커 3교시 해볼게요...

일단 오늘 할거는 이따가 알려 줄게요 ㅋ

저번에 알아봤던 도커 허브 저장소에서

보통 기본적으로 이미지를 긁어와요

docker search npm 혹은 ubuntu 하면

기본적으로 도커 허브에서 갖고오고

사용자가 따로 설정하면 그곳에서 받아오겠죠?

도커허브 사이트에서 검색해도 똑같다고 합니다.

그리고 이미지 마다 아키텍처가 다른데 이것도 신경 쓰지않아도 됩니다.

도커가 알아서 자신이 무슨 아키텍처쓰는지 확인후

설치해주기 떄문에...걱정이좀 덜었죠?

[root@C3 ~]# docker inspect ubuntu | grep Arch

"Architecture": "amd64",

[root@C3 ~]#

그리고 저장소에 내가만든 이미지를 올릴수 있어요

이렇게 하려면 여러 방법이 있겠지만

이책에서는 tag를 이용하라고 하네요.

docker tag [images]:x.x [계정]/[images] 이런식으로 하랍니다

저는 일단 계정이 없어서 테스트를 못해봐요 ㅠ

이미지 올리는건 푸쉬

내리는건 풀

그다음 우리가 원하는 도커 사설 레지스트리 (저장소)

이거는 말그대로 위에 설명한것처럼

도커 허브가 아닌 내저장소에서 이미지를 관리하는 거겠죠?

[root@C3 ~]# docker run -d --name myreg \

> -p 9999:9999 \

> --restart=always \

> registry:2.6

Unable to find image 'registry:2.6' locally

2.6: Pulling from library/registry

486039affc0a: Pull complete

ba51a3b098e6: Pull complete

470e22cd431a: Pull complete

1048a0cdabb0: Pull complete

ca5aa9d06321: Pull complete

Digest: sha256:c4bdca23bab136d5b9ce7c06895ba54892ae6db0ebfc3a2f1ac413a470b17e47

Status: Downloaded newer image for registry:2.6

bd00a43f409c0baef986ef9e750cc171338c4000dccc47f3189d124dd15b1d64

[root@C3 ~]# docker ps

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

bd00a43f409c registry:2.6 "/entrypoint.sh /etc…" 18 seconds ago Up 17 seconds 5000/tcp, 0.0.0.0:9999->9999/tcp, :::9999->9999/tcp myreg

[root@C3 ~]#

[root@C3 ~]# docker run -d -p 9999:5000 --restart=always registry:2.6

ba3d97782c4e398796a2fa5ba3d88bd67f16e534948723a5f0eb49922207f584

[root@C3 ~]# docker ps

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

ba3d97782c4e registry:2.6 "/entrypoint.sh /etc…" 2 seconds ago Up 1 second 0.0.0.0:9999->5000/tcp, :::9999->5000/tcp angry_williams

[root@C3 ~]# !curl

curl http://localhost:9999/v2/

{}[root@C3 ~]# docker tag ubuntu:14.04 localhost:9999/myosimg:14.04

[root@C3 ~]# docker push localhost:9999/myosimg:14.04

The push refers to repository [localhost:9999/myosimg]

83109fa660b2: Pushed

30d3c4334a23: Pushed

f2fa9f4cf8fd: Pushed

14.04: digest: sha256:881afbae521c910f764f7187dbfbca3cc10c26f8bafa458c76dda009a901c29d size: 945

[root@C3 ~]# curl http://localhost:9999/v2/_catalog

{"repositories":["myosimg"]}

[root@C3 ~]#

도커 푸시 풀 해보기

[root@C3 ~]# docker images

REPOSITORY TAG IMAGE ID CREATED SIZE

ubuntu latest 59ab366372d5 6 weeks ago 78.1MB

prom/node-exporter latest 71dc9668b154 4 months ago 23.3MB

rockylinux/rockylinux 8 fcc573d8a467 5 months ago 198MB

centos 7 eeb6ee3f44bd 3 years ago 204MB

registry 2.6 10b45af23ff3 4 years ago 28.5MB

alicek106/stress latest 4df5775342a8 5 years ago 146MB

[root@C3 ~]# docker pull localhost:9999/myosimg:14.04

14.04: Pulling from myosimg

2e6e20c8e2e6: Already exists

0551a797c01d: Already exists

512123a864da: Already exists

Digest: sha256:881afbae521c910f764f7187dbfbca3cc10c26f8bafa458c76dda009a901c29d

Status: Downloaded newer image for localhost:9999/myosimg:14.04

localhost:9999/myosimg:14.04

[root@C3 ~]# docker images

REPOSITORY TAG IMAGE ID CREATED SIZE

ubuntu latest 59ab366372d5 6 weeks ago 78.1MB

prom/node-exporter latest 71dc9668b154 4 months ago 23.3MB

rockylinux/rockylinux 8 fcc573d8a467 5 months ago 198MB

centos 7 eeb6ee3f44bd 3 years ago 204MB

localhost:9999/myosimg 14.04 13b66b487594 3 years ago 196MB

registry 2.6 10b45af23ff3 4 years ago 28.5MB

alicek106/stress latest 4df5775342a8 5 years ago 146MB

[root@C3 ~]#

자 일단 nginx는 버리고 오늘 우리가 도커 저장소 퍼블릭 및 프라이빗을

알아보고 실습은 프라이빗을 해봤어요..

물론 실무는 이거보다 훨씬 복잡하겠죠? 상용이니깐

그래도 이런게 밑바탕으로 깔려야 이해가 수월하게 될거니깐

알아본겁니다..

자 다음에는 이거말고 다른 응용기법이나 개념을 알아볼게요

고생했어요 ㅅㄱ

#################################################################

docker

반응형