Docker Images

Docker Image 생성 삭제 

1. 이미지 생성

$> docker run -it --name commit_test ubuntu:14.04

컨테이너 내 파일 추가

root@abcd1234 /# echo test_first! >> first


2. 이미지 commit

# docker commit [옵션] {컨테이너명} [리파지토리[:태그]]

$> docker commit -a "abcd123" -m "first commit" commit_test commit_test:first

-a : author

-m : message


3. 이미지 확인

$> docker images

레이어 구조 확인

$> docker history {라파지토리[:태그]}


4. 이미지 삭제

$> docker rmi {리파지토리[:태그]}


5. 이미지 추출 & 원복

$> docker save -o ubuntu_14.04.tar ubuntu:14.04

$> docker load -i ubuntu_14.04.tar


6. FileSystem 추출 & 원복

$> docker export -o rootFS.tar mycontainer

$> docker import rootFS.tar myimage:0.0


Docker Hub (https://hub.docker.com)

1. 이미지 검색

$> docker search {검색어}

cf) 도커 이미지의 architecture 확인

$> docker inspect ubuntu | grep "Architecture"


2. 이미지 업로드

1) 도커 허브에 로그인

$> docker login


2) 이미지명에 repository 접두어 추가

$> docker tag my-image:0.0 alicek107/my-image:0.0

cf) 이미지 이름 변경법

# docker tag {기존 이미지명} {새로운 이미지명}


3) 이미지 push

$> docker push alicek107/my-image:0.0


4) 이미지 download

$> docker pull alicek107/my-image:0.0


3. 사설 Registry

1) 사설 registry 실행

$> docker run -d --name myregistry -p 5000:5000 --restart=always registry:2.6

--restart : 컨테이너 종료 되었을때 재시작 정책

always : 항상 재시작

on-failure:{횟수} : 컨테이너 종료 코드가 0이 아닐때 5번까지 재시작

unless-stopped : stop 명령어로 정지했다면 도커 호스트나 엔진을 재시작해도 

                          컨테이너 시작되지 않음

확인

$> curl localhost:5000/v2/


2) 사설 registry로 이미지명 변경

$> docker tag test-image:0.0 {사설registry_IP}:5000/test-image:0.0

또는 환경변수 DOCKER_HOST_IP 설정


3) Push

$> docker push {사설registry_ip}:5000/test-image:0.0

cf) 도커 데몬은 https가 기본이라 http 오류가 나면 아래 설정.

DOCKER_OPTS="--insecure-registry={IP}:5000" (단, localhost는 기본적으로 insecure-registry)


4) Pull

$> docker pull {사설registry_IP}:5000/test-image:0.0


댓글

이 블로그의 인기 게시물

[Protocol] WIEGAND 통신

Orange for Oracle에서 한글 깨짐 해결책

[UI] GNB·LNB·SNB·FNB 용어 설명