Докер: все о контейнерах

Логотип Docker: Кит с грузом

Как вы, возможно, уже знаете, существует несколько типов виртуализации, один из них - виртуализация на уровне операционной системы, а одним из наиболее выделяющихся в этом отношении проектов является Докер, наряду с другими проектами с открытым исходным кодом, такими как OpenVZ, LXC / LXD, Linux-VServer и т. д., или проприетарным программным обеспечением Virtuozzo. Если вы знакомы с этим миром или регулярно посещаете этот тип блога, вы уже знаете о проекте, логотипом которого является кит (отсюда и название для тех, кто этого еще не знает), и, прежде всего, вы заметили как в последние годы ее присутствие в СМИ и интерес к ней росли в геометрической прогрессии.

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

Докер и контейнеры:

РанчерОС

Хотя ответ несколько сложнее и мне понадобится несколько таких статей, я постараюсь резюмировать это. Однако, если вам нужно узнать больше об этом фантастическом проекте, есть очень хорошие книги, такие как Альберто Гонсалес, нынешний консультант Red Hat Cloud. Это практическое руководство, которое вы можете приобрести по доступной цене как в Amazon как в Агапеа. Что ж, с учетом сказанного, давайте узнаем, что такое Docker.

Мы все знаем, что Контейнеры Они стали инструментом с большим потенциалом в Linux, ну, они могут быть реализованы и управляться с помощью программного обеспечения Docker. Контейнеры - это не что иное, как изолированные «коробки» с необходимым для запуска определенной программы или приложения. Это можно понимать как легкую виртуальную машину, вместо полной и тяжелой, с которой работает полная виртуализация. Это сокращение приводит к меньшим накладным расходам.

Контейнеры тоже приносят легкость портативность, самодостаточность и гибкость очень востребован разработчиками. Все благодаря LXC из нашего любимого ядра Linux и самому проекту Docker с его контейнерами, образами и репозиториями. И именно эти преимущества принесли успех, который был отмечен как участием некоторых крупных компаний в этом секторе, таких как Google, Red Hat, IBM и Microsoft, так и его внедрением и хорошим приемом в крупных компаниях и облачных средах. сервисы, которыми мы пользуемся ежедневно (AWS, Digital Ocean,…).

Пошагово устанавливаем Docker:

Веб-интерфейс Docker Cloud

У вас есть несколько альтернатив установить Docker, от получения архива с исходным кодом и компиляции до получения двоичных файлов из разных репозиториев и управления ими с помощью менеджеров пакетов вашего дистрибутива openSUSE, Ubuntu, Debian, CentOS, Fedora и т. д. Возможно, с бинарными пакетами это удобнее, но чтобы не затягивать тему, я собираюсь представить более прямой и универсальный метод, который работает в любом дистрибутиве:

sudo curl -fsSL https://get.docker.com/ | sh

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

sudo systemctl enable docker

sudo systemctl start docker

Если все прошло хорошо, уже будет активен все. Вы можете проверить это с помощью:

sudo systemctl status docker

Мы можем начать использовать его сейчас ...

Первые шаги: создание контейнера

Схема контейнера

Ну, как вы уже знаете, контейнер Это пакет со всем необходимым для запуска одного или нескольких приложений, то есть похож на виртуальную машину, но легче, в зависимости от хоста для выполнения. Чтобы контейнер работал, он должен иметь необходимые библиотеки для выполнения, а также определенные зависимости, такие как некоторые инструменты операционной системы. Конечно, еще одна из необходимых частей - это среда выполнения, то есть среда выполнения, такая как интерпретаторы для интерпретируемых языков, JVM, файлы с кодом или двоичные файлы и т. Д.

Есть некоторые основные команды Docker, с помощью которого вы будете «перемещаться» в среде, их довольно много, например info, insert, kill, stop, start, build, ps и т. д. Чтобы увидеть их все и для чего каждый, все, что вам нужно сделать, это запустить:

docker

Для получения дополнительной информации вы можете проконсультироваться официальная документация.

Как можно создать контейнер с Docker? Что ж, теперь мы собираемся привести пример, мы собираемся создать контейнер с Ubuntu, и для этого мы используем команду run, которая позволяет как создавать, так и выполнять контейнеры (дополнительная информация запустить -h):

docker run -i -t ubuntu /bin/echo Prueba contenedor

И это будет использовать локальный образ, если он у нас уже есть, или, если он не может его найти, он его загрузит. Более того создаст контейнер, выделит место для новой файловой системы и смонтирует ее. Конечно, вы назначите сетевой интерфейс для связи гостя и хоста. После этого он покажет нам эхо с фразой «Тест контейнера»Что мы поставили.

Вы посмотреть все изображения что у тебя с:

docker images

И для Arrancar один, вы можете использовать идентификатор контейнера с:

docker start -a <pon-la-ID-del-container>

Чтобы остановить их, вы можете использовать stop вместо start:

docker stop <pon-la-ID-del-container>

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


Оставьте свой комментарий

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

*

*

  1. Ответственный за данные: AB Internet Networks 2008 SL
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   Sayabros сказал

    Интересно, с нетерпением жду следующих статей, спасибо