Latest web development tutorials

Докер зеркальное отображение

При запуске контейнера, с помощью зеркала, если нет локального, докер будет автоматически загружать из хранилища Докер изображения, по умолчанию загружается из источника общественного изображения Docker Hub.

Теперь мы пришли, чтобы узнать:

  • 1, управление и использование локального хоста зеркального отображения Докер
  • 2, создать зеркало

Списки список зеркал

Мы можем использовать зеркало Docker изображения в список на локальном хосте.

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

  • СОЗДАНО: Зеркало Создано

  • РАЗМЕР: размер изображения

Тот же источник склад может иметь несколько TAG, от имени склада источника различных версий, таких как источник убунту склад, там 15.10,14.04 и много разных версий, мы используем REPOSTITORY: TAG, чтобы определить различные изображения.

Таким образом, если мы хотим использовать версию 15.10 системы Ubuntu изображение, чтобы запустить контейнер с помощью следующей команды:

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

Если вы хотите использовать версию 14.04 системного образа Ubuntu для запуска контейнера с помощью следующей команды:

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

Если вы не укажете зеркальную версию этикетке, например, вы используете только Ubuntu, докер будет Ubuntu по умолчанию: последнее изображение.


Получить новое зеркало

Когда мы используем зеркало, которое не существует на локальном хосте Докер будет автоматически загружать изображения. Если мы хотим, чтобы предварительно загрузить этот файл, мы можем использовать команду Docker тянуть, чтобы загрузить его.

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

После завершения загрузки, мы можем непосредственно использовать это изображение, чтобы запустить контейнер.


Найти Зеркало

Мы можем искать зеркало с сайта Docker Hub, Docker концентратор по адресу: https://hub.docker.com/

Мы также можем использовать команду поиска Docker для поиска Mirror. Например, нам нужно зеркало, чтобы HTTPd как наши веб-сервисы. Мы можем искать HTTPd поиска команды Докер, чтобы найти зеркало для нас.

w3big@w3big:~$  docker search httpd

ИМЯ: Имя источника хранилища зеркала

ОПИСАНИЕ: Описание зеркала

ОФИЦИАЛЬНО: Are Докер официальный релиз


Исторгая Зеркало

Мы решили использовать HTTPd официальную версию изображения над зеркалом, используйте команду Docker тянуть, чтобы загрузить изображение.

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-получить в управлении судна, которое будет обновлено.

После завершения операции, введите команду Выход для выхода из контейнера.

В этом случае контейнер ID e218edb10161 представляет собой контейнер, в соответствии изменить наши потребности. Мы можем представить копию контейнера через команду докер фиксации.

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

Различные параметры:

  • -m: описание информации , представленной

  • -a: Определяет зеркало Автор

  • e218edb10161: Идентификатор контейнера

  • w3big / убунту: v2: Задает имя целевого изображения , которое будет создано

Мы можем видеть наше новое изображение w3big / убунту Докер изображения с помощью команды: v2:

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 изображение / Ubuntu , чтобы начать контейнер

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

Строительство зеркала

Мы используем команду Docker сборки, с нуля , чтобы создать новый образ. Для этого нам нужно создать Dockerfile файл, который содержит набор инструкций, чтобы сказать Docker, как строить свой имидж.

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

Каждая команда создаст новый слой в зеркало, префикс Каждая команда должна быть в верхнем регистре.

Первый FROM, указать, какой источник использование зеркала

Run 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

Используйте Docker изображения для просмотра изображения был создан в списке существует, зеркало ID для 860c279d2fec

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 нас


Настройка зеркального тега

Мы можем использовать команду тег Docker для зеркала, чтобы добавить новую метку.

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

Докер тег изображения ID, здесь 860c279d2fec, имя пользователя и имя исходного изображения (имя хранилища) и новое имя тега (тегов).

Docker изображения можно увидеть с помощью команды, идентификатор 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