Docker image

신민창·2021년 3월 7일
0

Docker

목록 보기
3/6

Docker image

모든 컨테이너는 이미지를 기반으로 생성되므로 이미지를 다루는 방법은 도커에서 매우 중요한 부분입니다. 이미지의 이름을 구성하는 저장소, 이미지 이름, 태그 뿐만 아니라 이미지 생성 및 삭제 방법, 이미지 구조 등에 대해서 알고 있어야 합니다.

도커는 도커 허브(Docker Hub)라는 중앙 이미지 저장소에서 이미지를 다운받습니다. 도커 허브는 도커가 공식적으로 제공하고 있는 이미지 저장소로써, 도커 계정을 가지고 있다면 다른 사람들의 이미지를 공유할 수 있습니다. 단, 누구나 이미지를 올릴 수 있기 때문에 Official 라벨이 없는 이미지는 동작하지 않을 수도 있습니다.

도커 허브에 어떤 이미지가 있는지 확인하기 위해서 도커 엔진에서 docker search 명령어를 사용해서 찾을 수 있습니다.

# docker search ubuntu:18.04
NAME                                        DESCRIPTION                                     STARS     OFFICIAL   
AUTOMATED
gotoeasy/ubuntu-desktop                     在 ubuntu:18.04 的基础上,安装中文桌面环境,…                  2     
               
ercircle/ubuntu_server                      java1.8,tomcat1.9,mysql 5.7 ubuntu:18.04 mys…   2                    
[OK]
atrioinc/data-tools                         Ubuntu:18.04 based docker definition with da…   1                    
rocm/dev-ubuntu-18.04                       Docker image based on Ubuntu:18.04 with the …   1                    
rrvieira/ubuntu                             Custom image built from Ubuntu:18.04            1                    
matrix1986/rust                             rust build, run with ubuntu:18.04               0                    
…   0                    
[OK].......

많은 ubuntu:18.04 이미지를 확인할 수 있습니다. stars는 해당 이미지가 도커 사용자로부터 얼마나 즐겨찾기 됐는지를 나타냅니다.

Docker images 생성

다음 명령어로 컨테이너를 생성합니다.

# docker run -i -t --name doimagetest ubuntu:18.04
# echo test_first! >> first

도커 컨테이너에서 빠져나와 이미지를 만듭니다.

# docker commit [OPTIONS] CONTAINER [REPOSITORY:[TAG]]

# docker commit -m "myfirstdockerimage" doimagetest doimagetest:first
sha256:14a8020b38effaeb13a2d3b0f2003a34d18f720072dd4d44ab7c5816bdd7cc7a

최상위 디렉터리에 first라는 파일이 있는 도커 이미지가 생성되었습니다.
docker images 명령어로 확인합니다.

# docker images
REPOSITORY    TAG       IMAGE ID       CREATED          SIZE
doimagetest   first     14a8020b38ef   47 seconds ago   63.3MB

Docker image 배포

이미지를 생성했다면 이를 다른 도커 엔진에 배포할 수 있게 만들어야합니다.

먼저 도커 허브 저장소를 생성해야 합니다.

https://hub.docker.com/ 에서 회원가입을 하면

해당 화면을 볼 수 있습니다.

여기서 Create Repository를 클릭합니다.

repository 이름을 입력하고 Create 버튼을 클릭합니다.


생성되었습니다. 여기에 이미지를 올려봅시다.

먼저 도커에 로그인해야 합니다.

# docker login

입력 후 아이디, 비밀번호를 입력해 로그인해줍니다.

# # docker tag doimagetest:first tlsalsckd13/test-image:0.0  -> Dockerimage에 tag 달기

# docker push tlsalsckd13/test-image:0.0  -> tag 적용된 이미지를 도커에 push

도커 사이트에서

올라온 것을 볼 수 있다.

해당 이미지를 다운 받으려면 별다른 로그인 없이

# docker pull tlsalsckd13/test-image:0.0
Digest: sha256:5b8f543d6013c0d80675176ab9d4cb7f31433b4a05644cec57692d4edf6cecac
Status: Image is up to date for tlsalsckd13/test-image:0.0
docker.io/tlsalsckd13/test-image:0.0

해당 명령어를 입력하면 받아올 수 있다.

0개의 댓글

관련 채용 정보