이번 포스트에는 docker 이미지를 저장하는법, 그리고 docker hub사용법에 대해 알아보겠습니다.
도커 환경 설치에 대해 모르신다면 아래의 링크를 참조
https://spidyweb.tistory.com/277
도커 이미지, 컨테이너 개념에 대해 모르신다면 아래의 링크를 참조
https://spidyweb.tistory.com/278
도커 기본 명령어에 대해 모르신다면 아래의 링크를 참조
https://spidyweb.tistory.com/279
1.docker 이미지 저장하기
자신이 원하는 이미지를 저장 해보겠습니다.
1) 우선 ubuntu 18.04 이미지를 컨테이너로 실행합니다.
$ docker run -i -t ubuntu:18.04 /bin/bash
2) apt-get update 를 통해 업데이트를 해줍니다.
$ apt-get update
3) apt-get install git을 통해 git을 다운 받아줍니다.
$ apt-get install git
4) git설치확인(version 확인)
$ git --version
여기까지 완료가 되었다면, 컨테이너의 상태는 ubuntu:18.04에 git을 설치가 된 상태입니다.
컨테이너의 접속을 끊고, 다시 접속함으로써 git을 설치한 상태가 유지되는지 확인 하겠습니다.
5) git 설치 상태 확인
1. ctrl + d로 컨테이너 벗어나기, 컨테이너 접속 종료된 것 확인
2. 컨테이너 시작시키기
$ docker start [containter ID or container name]
3. 컨테이너에 접속하기
$ docker attach [container ID or container name]
4. git 설치 확인
컨테이너 재접속 후에도 git이 설치된 상태로 남아 있는 것을 확인했습니다.
이제 현재 컨테이너 상태인, 이미지를 저장해보겠습니다.
(이미지 빌드하기에 앞서, 컨테이너 접속을 종료해주세요. ctrl+d)
docker image를 저장하는 명령어
$ docker commit [container ID or container name] REPOSITORY:TAG
2. docker hub에 이미지 올리기
*Docker hub란?
도커 허브는 도커에서 제공하는 기본 이미지 저장소로 ubuntu, centos, debian 등의 베이스 이미지와 ruby, golang, java, python 등의 공식 이미지가 저장되어 있다. Github과 유사한 구조라고 생각하면 된다.
도커 허브에 이미지를 올리기 위해선 https://hub.docker.com/에 회원가입이 되어 있어야 한다.
1) Docker login
docker hub에 회원 가입을 하고 나서, ubuntu에서 docker login을 합니다.
$ Docker login -> user ID, PASSWORD 입력
2) 도커 이미지 생성
도커 허브에 올릴 때는 이미지 이름을 [Username]/[저장소 이름]:[태그] 형태로 작성해주어야 한다.
(저장소가 생성 되어있지 않은 이름으로 올리게 되면 저장소가 생성된다.)
$ docker commit [container ID or container name] jiho3588/ubuntu:git
3) docker hub에 push하기
$ docker push username/repository name:tag name
이미지가 docker hub에 잘 올라왔습니다.
3. docker hub에서 이미지 내려받기
이미지 내려받는 건 docker pull 명령어를 사용한다.
$ docker pull repository name:tag name
특정 유저의 repository에서 pull 할 때는 조금 다른데, 아래와 같다.
$ docker pull user/repository name:tag name
다음 포스트에는 docker file만들기와 docker build하기를 알아보겠습니다.
'DevOps > Docker' 카테고리의 다른 글
[Docker] Docker Swarm 이란? Docker Swarm vs K8S (0) | 2022.12.03 |
---|---|
[Docker] docker file로 image build하기 (ubuntu:18.04 image에 git설치 실습) (0) | 2021.09.15 |
[Docker] docker MySQL, postgreSQL 실행해보기 (0) | 2021.08.26 |
[Docker] docker 기본 명령어 정리 (image, container) (0) | 2021.08.23 |
[Docker] docker 이미지(image), 레이어(layer), 컨테이너(container) (0) | 2021.08.23 |
댓글