Позвольте мне провести ваше первое свидание с Docker

pozvolte mne provesti vashe pervoe svidanie s docker

Установите Docker, создайте свой первый контейнер и т.д.

Возможно, вы видели Docker где-нибудь в Интернете, и вам это может быть интересно. Теперь вы хотите перейти на следующий уровень. Как насчет того, чтобы пойти на свидание с Docker? Нет – я не шучу!

Но как спланировать идеальное первое свидание? Что тебе следует сделать? Где найти нужные ресурсы? Какие предпосылки вам могут понадобиться?

Вопросы бесконечны. Следуйте этим инструкциям по первому свиданию, и вы будете на пути ко второму.

Планирование свидания

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

Никогда не поздно поздороваться. Вот краткое вступление к моей первой встрече с Docker, если вам интересно.

Хорошо! Итак, дорожная карта, которой мы будем руководствоваться сегодня, выглядит примерно так:

  1. Обустройство места проведения
  2. Пикап
  3. Разговор

Прелюдия

Место, где мы установим нашу дату, – это двигатель Docker.

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

Некоторые из этих компонентов мы рассмотрим в этой статье. Но пока давайте украсим нашу машину с помощью Docker. Процесс установки зависит от вашей операционной системы.

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

Docker доступен в двух вариантах: Docker Community Edition (CE) и Docker Enterprise Edition (EE). Для демонстрационных целей мы должны соблюдать сообщество. Издание Enterprise является платным. И кроме того, бронировать дорогое первое свидание – не самая лучшая идея?

Место проведения

Основная мантра для любого благоприятного свидания – выбрать правильное место встречи. Встреча с Docker ничем не отличается. Сначала следует определиться с платформой. Облако? Мак? Linux? Или Windows? Когда мы знаем нашу среду, мы можем выбрать самый простой способ организации места встречи.

Windows

Если ваш выбор – Windows, процесс настройки достаточно прост. Вспомните наш любимый процесс: Дальше, Далее, Дали и Готово.

Выделите страницу загрузки и выберите «Канал Edge». Edge имеет экспериментальные функции и лучше всего подходит для наших обучающих целей.

Примечание! Docker для Windows нужна функция Hyper-V, но беспокоиться не о чем — Docker включит ее вместо вас. Однако это означает, что вы не можете использовать Virtual Box.

Linux

Когда я впервые начал экспериментировать с Linux box, я думал, что это будет кошмар. Но, к моему облегчению, настройка Docker на дистрибутиве Linux оказалась простой. Опять же существует много способов установить Docker на дистрибутив Linux.

Мой любимый: «Установить с помощью удобного сценария». Мы берем длинный сценарий оболочки из Интернета, а затем передаем его на терминал оболочки.

Как? Нравится это:

sudo wget -qO-  |sh

Готово! Да, на вашем компьютере запущен и работает Docker.

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

Давайте выполним следующую команду в терминале:

docker version

Вы должны увидеть детали установки. Он предоставляет вам информацию о Клиент и Сервер версия, Go-lang версия, и так далее, и так далее.

Если результат вашей команды похож на нижеприведенный, светит солнце, и мир прекрасен. Дальше: пора готовиться к «Пикапу».

n435DcbT4csc32tM5JOtrQrRDrvGHZZqhUx2
Выход команды

Пикап

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

Изображение содержит двоичные файлы программы и их зависимости. Он также может содержать другие компоненты, такие как веб-сервер или даже операционная система.

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

Итак, где обитают эти изображения? Простой вопрос, простой ответ: на хосте. Этим хостом может быть ваша машина или реестр где-нибудь в Интернете. У Docker есть свой реестр под названием Docker-Hub.

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

Чтобы сделать ваше первое свидание более легким, я нашел точное расположение изображения, которым могу поделиться с вами. Достаточно взволнован? Вот так!

docker pull chandrabhan/dotnetconsole

Давайте подтвердим, что мы находимся в правильном месте. ?

docker image ls
ESkhGnOlmgnvsNWlJwQi45OdWHMWXM0m2wPD
выход команды

Здесь вы можете увидеть разные свойства изображений на вашей машине. Круто, похоже, пока все идет хорошо.

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

С Docker pull, мы попросили Docker Daemon вытащить для нас образ. Демону не удалось найти образ в локальном реестре, поэтому он продолжил и вытащил удаленную копию из Docker-Hub.

Из-за docker image ls мы увидели все доступные изображения и их свойства.

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

Разговор

Начните разговор, и все пойдет в вашу пользу.

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

Мы создадим несколько контейнеров для приложений .Net Core. Первое из них будет простым консольным приложением. Другой будет немного красочнее – веб-приложение.

docker run chandrabhan/dotnetconsole
CX7U8rR4b1bPzulYe15hEShC5IFrYEAy1Y3k
выход команды

Прекрасно! Вы видели, что там произошло? Этот материал удивителен. Основная программа .Net работает внутри контейнера. Docker создал контейнер и выполнил программу внутри него. И как только консольная программа кончается, контейнер существует!

Давайте посмотрим, сколько контейнеров у нас в машине:

docker container ls -a
tuXcPX2nL8L7UQ5huyqHwvKip6Lm8-qFu0Cv
выход команды

Здесь вы видите список контейнеров на вашем компьютере. Вы можете определить контейнер по его ID. Выход сообщает нам, когда был контейнер CREATED и какой он сейчас STATUS есть Контейнер, который мы создали, находится в Exited статус. Помните? Наша программа закрыта! Так же и контейнер.

Похоже, разговор продвигается хорошо, так что давайте продолжим.

docker run -it --rm -p 5000:80 --name app chandrabhan/aspdotnet

Перейдите в свой любимый браузер и посмотрите http://localhost:5000. Вы должны увидеть больше удивительных вещей.

Основная веб-программа ASP.Net работает внутри контейнера:

bE3jqk9-iKAtDEdeHgqqiNYhCe2SXvAEOZ1c
контейнеризированный – образец программы ASP.Net

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

inCu2ZgNwFRlxd4z9BN4hM7344sBOG53BB4I
командная анатомия

Вы заметили? На этот раз мы не извлекли изображение, но все же смогли создать из него контейнер. Когда вы выполняете docker run, Демон Docker пытается найти локальную копию изображения. Если это не удается, он продолжает и пытается найти его в реестре по умолчанию (в этом случае Docker-Hub).

Я считаю, что наша планировка была прекрасной, как и выполнение. Давайте перемотаем то, что мы сделали, и рассмотрим, как мы планировали благоприятное свидание с Docker?

Перемотка назад

  1. Сначала мы установили Docker. Мы увидели, как процесс установки зависит от операционной системы.
  2. Затем мы вытащили образ из реестра Docker-Hub, простого консольного приложения .Net Core.
  3. После того, как у нас было это изображение на нашей машине, мы использовали Docker для создания контейнера из этого изображения.
  4. Мы также увидели, как извлечь изображение и запустить контейнер с помощью одной команды.

Вот иллюстрация, которая поможет вам понять картину высокого уровня.

PuQLeHlccMgOtNb5VFtvC0uuYnEjuaVb9J22
иллюстрация: клиент и демон Docker

Следовать

Из глаз прочь из сердца прочь

Дальнейшие наблюдения столь же важны, как и любой другой этап при свидании. Теперь я должен оставить вас с вашим свиданием и хотел бы услышать, как оно прошло. Ниже приведены несколько ссылок, которые могут быть полезны:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *