Докер

Как работи Dockerfile?

Как работи Dockerfile?
Можете да разположите само един контейнер с помощта на изображението на докера. Ако обаче трябва да разположите няколко контейнера (всеки за различни задачи) от едно и също изображение, какво ще се случи? Можете да разрешите това с помощта на dockerfile.

Dockerfile е прост текстов файл, който съдържа всички команди, които потребителят може да извика в командния ред за сглобяване или изграждане на изображение. С помощта на докер компилация можете лесно да автоматизирате компилация, която изпълнява множество команди, дефинирани последователно в докер файла.

Например искате да изтеглите изображението на докера от центъра на докера за вашите специфични нужди за развитие. След това искате да актуализирате изображението, да инсталирате някои пакети за вашия процес на разработка. В този случай можете да създадете докер файл, да включите всички параметри за вашите специфични нужди и да изградите вашето персонализирано изображение. След като създадете докер файл, можете да го използвате отново и отново, за да изградите едно и също изображение, без да инсталирате ръчно всички необходими пакети за вашия процес на разработка.

Dockerfile Basic

Преди да работите с dockerfile, ако е важно да знаете как да направите dockerfile. Dockerfile включва конкретни ключови думи, които могат да се използват за изграждане на конкретно изображение. Кратко обяснение на всички ключови думи, използвани в докер файл, са изброени по-долу:

Създаване на Dockerfile

В този раздел ще създадем докер файл, за да изградим образ на LAMP сървър от базовото изображение на Ubuntu.

Първо, ще трябва да създадете директория за съхраняване на докер файла. Можете да го създадете със следната команда:

mkdir ЛАМПА

След това създайте директория с име Dockerfile вътре в директорията:

nano LAMP / Dockerfile

Добавете следните редове:

ОТ ubuntu: най-новата
ПОДДРЪЖНИК Хитеш Йетва
ENV DEBIAN_FRONTEND = неинтерактивно
РАБОТА apt-get update -y && apt-get install apache2 mariadb-server
libapache2-mod-php php php-cli php-често срещан php-mysql php-json php-curl -y
CMD ["apachectl", "- D", "ПРОСТРАНСТВО"]
ЕКСПОЗИЦИЯ 8080

Запазете и затворете файла, когато приключите.

Изграждане на изображение с Dockerfile

След създаването на Dockerfile можете лесно да създадете персонализиран LAMP образ с помощта на Dockerfile.

Първо, сменете директорията на LAMP и изпълнете следната команда, за да изградите изображението от този файл:

cd LAMP
docker build -t "лампа: Dockerfile".

Горната команда ще започне да изтегля последното изображение на Ubuntu от Docker Hub и ще инсталира необходимите пакети, посочени в Dockerfile. След като изображението е изградено успешно, трябва да видите следния изход:

Изпращане на контекст на компилация до демон на Docker 2.048kB
Стъпка 1/6: ОТ ubuntu: най-новата
последно: Изтегляне от библиотека / ubuntu
54ee1f796a1e: Издърпване завършено
f7bfea53ad12: Издърпване завършено
46d371e02073: Издърпване завършено
b66c17bbf772: Издърпване завършено
Дайджест: sha256: 31dfb10d52ce76c5ca0aa19d10b3e6424b830729e32a89a7c6eee2cda2be67a5
Състояние: Изтеглено по-ново изображение за ubuntu: най-новото
---> 4e2eef94cd6b
Стъпка 2/6: ПОДДРЪЖКА Hitesh Jethva
---> Работи в 047977af2c2a
Премахване на междинен контейнер 047977af2c2a
---> 1331df625c4c
Стъпка 3/6: ENV DEBIAN_FRONTEND = неинтерактивно
---> Работи в 3597152c7a1b
Премахване на междинен контейнер 3597152c7a1b
---> 86c82c95e75d
Стъпка 4/6: РАБОТА apt-get update -y && apt-get install apache2 mariadb-server
libapache2-mod-php php php-cli php-често срещан php-mysql php-json php-curl -y
Премахване на междинен контейнер 322532299fd9
---> f6897a9554f7
Стъпка 5/6: CMD ["apachectl", "- D", "FOREGROUND"]
---> Работи в 669635bc8bcb
Премахване на междинен контейнер 669635bc8bcb
---> e8400eb2e677
Стъпка 6/6: ИЗЛОЖЕТЕ 8080
---> Работи в 937ae2b2d305
Премахване на междинен контейнер 937ae2b2d305
---> 2123a857361d
Успешно построен 2123a857361d
Успешно маркирана лампа: Dockerfile

Вече можете да изброите новоизграденото си изображение, като изпълните следната команда:

изображения на докер

Трябва да видите следния изход:

СЪЗДАДЕН РАЗМЕР НА ИЗОБРАЖЕНИЕТО НА ИЗОБРАЖЕНИЕТО НА РЕПОЗИТОРИЙ
лампа Dockerfile 2123a857361d преди 44 секунди 520MB
ubuntu най-новата 4e2eef94cd6b преди 8 дни 73.9MB

Сега имате персонализирано изображение на LAMP сървър в ръката си. Можете също да видите историята на всяка команда със следната команда:

лампа за история на докер: Dockerfile

Трябва да видите следния изход:

ИЗОБРАЖЕНИЕ, СЪЗДАДЕНО, СЪЗДАДЕНО ПО РАЗМЕР КОМЕНТАР
2123a857361d преди 16 минути / bin / sh -c # (nop) EXPOSE 8080 0B
e8400eb2e677 преди 16 минути / bin / sh -c # (nop) CMD ["apachectl" "-D" "FO… 0B
f6897a9554f7 преди 16 минути / bin / sh -c apt-get update -y && apt-get inst… 446MB
86c82c95e75d преди 17 минути / bin / sh -c # (nop) ENV DEBIAN_FRONTEND = nonin… 0B
1331df625c4c преди 17 минути / bin / sh -c # (nop) MAINTAINER Hitesh Jethva 0B
4e2eef94cd6b преди 8 дни / bin / sh -c # (nop) CMD ["/ bin / bash"] 0B

Създаване на контейнер от LAMP Image

Сега можете да стартирате контейнер от вашето изображение, като използвате следната команда:

docker run -dit lamp: Dockerfile

След като контейнерът е стартиран, трябва да видите следния изход:

0d2beb7dba01bb763768b116f734ae68286cee00d2ae923b2b7241c39ad54208

Можете да проверите работещия контейнер, като използвате следната команда:

докер ps

Трябва да получите следния изход:

ИМЕ НА КОНТЕЙНЕР ИМИДЖ КОМАНДА СЪЗДАДЕН СТАТУС ПРИСТАНИЯ ИМЕНА
c14794784eb2 лампа: Dockerfile "apachectl -D FOREGR ..." преди 2 минути нагоре 2 минути 0.0.0.0: 8080-> 8080 / tcp quirky_ramanujan

Заключение

В това ръководство научихте какво е Dockerfile и как да създадете образ на docker с Dockerfile. Това е много полезно за създаване на ваши персонализирани изображения, вместо да извършвате промени в изтеглено изображение.

Екранен тракпад и указател на мишката на AppyMouse за таблети с Windows
Потребителите на таблети често пропускат показалеца на мишката, особено когато са привични да използват лаптопите. Смартфоните и таблетите със сензоре...
Средният бутон на мишката не работи в Windows 10
The среден бутон на мишката ви помага да превъртате дълги уеб страници и екрани с много данни. Ако това спре, добре ще свършите да използвате клавиату...
Как да промените левия и десния бутон на мишката на компютър с Windows 10
Напълно нормално е всички устройства на компютърни мишки да са ергономично проектирани за десничари. Но има налични устройства за мишка, които са спец...