Latest web development tutorials

고정 표시기 미러링

로컬이없는 경우 거울을 사용하여 컨테이너를 실행하는 경우, 고정 표시기가 자동으로 고정 표시기 이미지 저장소에서 다운로드합니다 기본은 도커 허브 공공 이미지 소스에서 다운로드됩니다.

이제 우리는 배우고 와서 :

  • 1, 관리 및 로컬 호스트 미러링 도커의 사용
  • 이 미러를 만들

목록 목록 미러

우리는 로컬 호스트에 나열 미러 고정 표시기 이미지를 사용할 수 있습니다.

w3big@w3big:~$ docker images           
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
ubuntu              14.04               90d5884b1ee0        5 days ago          188 MB
php                 5.6                 f40e9e0f10c8        9 days ago          444.8 MB
nginx               latest              6f8d099c3adc        12 days ago         182.7 MB
mysql               5.6                 f2e8d6c772c0        3 weeks ago         324.6 MB
httpd               latest              02ef73cf1bc0        3 weeks ago         194.4 MB
ubuntu              15.10               4e3b13c8a266        4 weeks ago         136.3 MB
hello-world         latest              690ed74de00f        6 months ago        960 B
training/webapp     latest              6fae60ef3446        11 months ago       348.8 MB

각 옵션에 대한 설명 :

  • REPOSTITORY : 창고 소스 미러를 나타낸다

  • TAG : 거울 태그

  • 이미지 ID : 거울 ID

  • 만든이 : 미러 작성

  • SIZE : 이미지 크기

다른 이미지를 정의 TAG : 동일한웨어 하우스 소스는 우분투웨어 하우스 소스와웨어 하우스 소스 다른 버전, 대신, 여러 태그를 가질 수 15.10,14.04 및 많은 다른 버전이, 우리는 REPOSTITORY을 사용합니다.

그래서, 우리는 다음과 같은 명령을 사용하여 컨테이너를 실행하는 우분투 시스템 이미지의 버전 15.10을 사용하려는 경우 :

w3big@w3big:~$ docker run -t -i ubuntu:15.10 /bin/bash 
root@d77ccb2e5cca:/#

다음 명령을 사용하여 컨테이너를 실행하는 우분투 시스템 이미지의 버전 14.04을 사용하려면 :

w3big@w3big:~$ docker run -t -i ubuntu:14.04 /bin/bash 
root@39e968165990:/# 

당신이 레이블의 미러 버전을 지정하지 않을 경우, 예를 들어, 당신은 우분투를 사용하여 고정 표시기는 우분투 기본 것입니다 : 최신 이미지.


새 미러를 가져옵니다

우리가 로컬 호스트에 존재하지 않는 거울을 사용하는 경우 도커 이미지를 자동으로 다운로드합니다. 우리는이 이미지를 미리 다운로드 할 경우, 우리는 그것을 다운로드 고정 표시기 풀 명령을 사용할 수 있습니다.

Cw3big@w3big:~$ docker pull ubuntu:13.10
13.10: Pulling from library/ubuntu
6599cadaf950: Pull complete 
23eda618d451: Pull complete 
f0be3084efe9: Pull complete 
52de432f084b: Pull complete 
a3ed95caeb02: Pull complete 
Digest: sha256:15b79a6654811c8d992ebacdfbd5152fcf3d165e374e264076aa435214a947a3
Status: Downloaded newer image for ubuntu:13.10

다운로드가 완료되면, 우리는 직접 컨테이너를 실행하려면이 이미지를 사용할 수 있습니다.


미러 찾기

우리는 도커 허브 웹 사이트에서 거울을 검색 할 수 있습니다, 도커 허브에서 : https://hub.docker.com/

우리는 또한 거울을 검색 할 고정 표시기 검색 명령을 사용할 수 있습니다. 예를 들어, 우리는 우리의 웹 서비스로 httpd가하는 거울이 필요합니다. 우리는 우리를 위해 거울을 찾기 위해 아파치 명령 고정 표시기 검색을 검색 할 수 있습니다.

w3big@w3big:~$  docker search httpd

NAME : 미러웨어 하우스 소스의 이름

설명 : 거울의 설명

공식 : 공식 릴리스 고정 표시기입니까


그들에게 거울을 당겨

우리는 거울 위의 이미지의 아파치 공식 버전을 사용하여 이미지를 다운로드하는 명령 고정 표시기 풀을 사용하기로 결정했다.

w3big@w3big:~$ docker pull httpd
Using default tag: latest
latest: Pulling from library/httpd
8b87079b7a06: Pulling fs layer 
a3ed95caeb02: Download complete 
0d62ec9c6a76: Download complete 
a329d50397b9: Download complete 
ea7c1f032b5c: Waiting 
be44112b72c7: Waiting

다운로드가 완료되면, 우리는 거울을 사용할 수 있습니다.

w3big@w3big:~$ docker run httpd

거울 만들기

우리는 우리의 요구 사항을 충족하지 않는 고정 표시기 미러 미러 창고에서 다운로드 할 때, 우리는 변경할 수있는 두 가지 방법으로 이미지를 다음 수 있습니다.

  • 1. 업데이트 이미지 컨테이너에서 생성하고,이 이미지를 제출 한
  • 2. Dockerfile 지침은 새로운 이미지를 만들 수 있습니다

업데이트 이미지

업데이트 이미지 전에, 우리는 컨테이너를 만들 미러를 사용해야합니다.
w3big@w3big:~$ docker run -t -i ubuntu:15.10 /bin/bash
root@e218edb10161:/# 
선박의 실행에있는 apt-get update 명령을 사용하는 것은 업데이트합니다.

작업을 완료 한 후, 용기를 종료하려면 exit 명령을 입력합니다.

이 경우 ID의 e218edb10161 컨테이너는 우리의 요구 변화에 따라 컨테이너입니다. 우리는 명령 커밋 고정 표시기를 통해 용기의 사본을 제출할 수있다.

w3big@w3big:~$ docker commit -m="has update" -a="w3big" e218edb10161 w3big/ubuntu:v2
sha256:70bf1840fd7c0d2d8ef0a42a817eb29f854c1af8f7c59fc03ac7bdee9545aff8

다양한 매개 변수 :

  • -m : 정보의 설명을 제출

  • -a : 미러 저자 지정

  • e218edb10161 : 컨테이너 ID

  • w3big / 우분투 : v2를 : 대상 이미지의 이름을 만들 수 지정

V2 : 우리는 명령을 사용하여 w3big / 우분투 고정 표시기 이미지 새로운 이미지를보실 수 있습니다 :

w3big@w3big:~$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
w3big/ubuntu       v2                  70bf1840fd7c        15 seconds ago      158.5 MB
ubuntu              14.04               90d5884b1ee0        5 days ago          188 MB
php                 5.6                 f40e9e0f10c8        9 days ago          444.8 MB
nginx               latest              6f8d099c3adc        12 days ago         182.7 MB
mysql               5.6                 f2e8d6c772c0        3 weeks ago         324.6 MB
httpd               latest              02ef73cf1bc0        3 weeks ago         194.4 MB
ubuntu              15.10               4e3b13c8a266        4 weeks ago         136.3 MB
hello-world         latest              690ed74de00f        6 months ago        960 B
training/webapp     latest              6fae60ef3446        12 months ago       348.8 MB

우리의 새로운 이미지 w3big를 사용하여 / 우분투는 컨테이너를 시작합니다

w3big@w3big:~$ docker run -t -i w3big/ubuntu:v2 /bin/bash                            
root@1a9fbdeb5da3:/#

거울의 건설

우리는 새로운 이미지를 만드는 데 처음부터 명령 고정 표시기 빌드를 사용합니다. 이를 위해, 우리는 어떻게 우리의 이미지를 구축하는 도커 말할 명령 세트를 포함하는 Dockerfile 파일을 작성해야합니다.

w3big@w3big:~$ cat Dockerfile 
FROM    centos:6.7
MAINTAINER      Fisher "[email protected]"

RUN     /bin/echo 'root:123456' |chpasswd
RUN     useradd w3big
RUN     /bin/echo 'w3big:123456' |chpasswd
RUN     /bin/echo -e "LANG=\"en_US.UTF-8\"" > /etc/default/local
EXPOSE  22
EXPOSE  80
CMD     /usr/sbin/sshd -D

각 명령은, 거울에 새 레이어를 만드는 각 명령은 대문자 여야합니다 접두사 것입니다.

어느 거울 소스 사용 지정의 첫

RUN 실행 명령은 설치되어있는 거울에 고정 표시기를 알려줍니다. . .

우리는 그 다음 고정 표시기 빌드 명령으로 이미지를 구축 할 수 Dockerfile 파일을 사용합니다.

w3big@w3big:~$ docker build -t w3big/centos:6.7 .
Sending build context to Docker daemon 17.92 kB
Step 1 : FROM centos:6.7
 ---> d95b5ca17cc3
Step 2 : MAINTAINER Fisher "[email protected]"
 ---> Using cache
 ---> 0c92299c6f03
Step 3 : RUN /bin/echo 'root:123456' |chpasswd
 ---> Using cache
 ---> 0397ce2fbd0a
Step 4 : RUN useradd w3big
......

매개 변수 설명 :

  • -t : 대상 이미지의 이름을 생성 할 지정

  • . : 파일 디렉토리 Dockerfile, 당신은 절대 경로 Dockerfile를 지정할 수 있습니다

이미지를 볼 고정 표시기 이미지를 사용하면 목록에서 생성 된 존재 860c279d2fec의 거울 ID

w3big@w3big:~$ docker images 
REPOSITORY          TAG                 IMAGE ID            CREATED              SIZE
w3big/centos       6.7                 860c279d2fec        About a minute ago   190.6 MB
w3big/ubuntu       v2                  70bf1840fd7c        17 hours ago         158.5 MB
ubuntu              14.04               90d5884b1ee0        6 days ago           188 MB
php                 5.6                 f40e9e0f10c8        10 days ago          444.8 MB
nginx               latest              6f8d099c3adc        12 days ago          182.7 MB
mysql               5.6                 f2e8d6c772c0        3 weeks ago          324.6 MB
httpd               latest              02ef73cf1bc0        3 weeks ago          194.4 MB
ubuntu              15.10               4e3b13c8a266        5 weeks ago          136.3 MB
hello-world         latest              690ed74de00f        6 months ago         960 B
centos              6.7                 d95b5ca17cc3        6 months ago         190.6 MB
training/webapp     latest              6fae60ef3446        12 months ago        348.8 MB

우리는 컨테이너를 만들려면 새 미러를 사용할 수 있습니다

w3big@w3big:~$ docker run -t -i w3big/centos:6.7  /bin/bash
[root@41c28d18b5fb /]# id w3big
uid=500(w3big) gid=500(w3big) groups=500(w3big)

새 이미지 위에서 본 우리 w3big 사용자를 포함하는 생성 된


거울 태그를 설정

우리는 새 레이블을 추가하려면 거울에 대한 고정 표시기 태그 명령을 사용할 수 있습니다.

w3big@w3big:~$ docker tag 860c279d2fec w3big/centos:dev

고정 표시기 태그 화상 ID는, 여기에서, 사용자 이름 및 소스 이미지 (저장소 이름) 새로운 태그 이름 (태그) 860c279d2fec이다.

고정 표시기의 이미지가 명령을 사용하여 볼 수 있습니다, ID는 또 하나의 레이블 860c279d2fec 거울을합니다.

w3big@w3big:~$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
w3big/centos       6.7                 860c279d2fec        5 hours ago         190.6 MB
w3big/centos       dev                 860c279d2fec        5 hours ago         190.6 MB
w3big/ubuntu       v2                  70bf1840fd7c        22 hours ago        158.5 MB
ubuntu              14.04               90d5884b1ee0        6 days ago          188 MB
php                 5.6                 f40e9e0f10c8        10 days ago         444.8 MB
nginx               latest              6f8d099c3adc        13 days ago         182.7 MB
mysql               5.6                 f2e8d6c772c0        3 weeks ago         324.6 MB
httpd               latest              02ef73cf1bc0        3 weeks ago         194.4 MB
ubuntu              15.10               4e3b13c8a266        5 weeks ago         136.3 MB
hello-world         latest              690ed74de00f        6 months ago        960 B
centos              6.7                 d95b5ca17cc3        6 months ago        190.6 MB
training/webapp     latest              6fae60ef3446        12 months ago       348.8 MB