Введение
Docker — это платформа, созданная, чтобы помочь разработчикам создавать, масштабировать и воспроизводимо запускать свои приложения, отделяя свое приложение от инфраструктуры и зависимостей своего приложения. По своей сути Docker — это программное обеспечение, которое управляет процессами приложений в абстракциях, называемых контейнерами, используя виртуализацию на уровне операционной системы для доставки программного обеспечения в автономных образах. Docker широко используется для разработки и развертывания приложений.
Вариант использования, описанный в этом руководстве, лучше всего подойдет тем, кто хочет использовать Docker и несколько контейнеров в одной капле.
В этом руководстве вы узнаете, как развернуть дроплет DigitalOcean с предустановленными Docker и Docker Compose с помощью приложения DigitalOcean Docker 1-Click. После создания дроплета вы узнаете о других вариантах использования и распространенных командах Docker. Поскольку этот дроплет 1-Click основан на стандартном дроплете Ubuntu 20.04, вы можете следовать любому из наших руководств по Docker для созданного дроплета после завершения этого руководства.
Программное обеспечение в комплекте
К концу этого руководства у вас будет дроплет Ubuntu 20.04 со следующими дополнениями с помощью Docker 1-Click:
- Docker CE (версия 20.10.7): Docker CE или Docker Community Edition — это один из самых быстрых способов начать работу с Docker и идеально подходит для разработчиков и предприятий малого и среднего бизнеса, которые хотят экспериментировать с контейнерными приложениями.
- Docker Compose (версия 1.27.0): Docker Compose — это инструмент, помогающий разработчикам определять и совместно использовать многоконтейнерные приложения. С помощью Compose вы можете использовать файл YAML, чтобы определить нужные вам сервисы и развернуть их (или отключить) с помощью одной команды.
Помимо установки пакета, этот 1-Click также обрабатывает:
- Настройка Docker согласно официальным рекомендациям Docker.
- Настройка Docker Compose согласно официальным рекомендациям Docker Compose.
На момент написания этой статьи это решение в один клик будет устанавливать Docker Compose v1, который использует docker-compose
. Начиная с Docker Compose v2, Docker перешел на использование команды compose
CLI Compose, как описано в нашей последней версии этого руководства для Ubuntu 22.04, а не на исходную версию docker-compose
. Хотя установка отличается, в целом фактическое использование включает удаление дефиса из вызовов docker-compose
, чтобы стать docker compose
. Для получения полной информации о совместимости ознакомьтесь с официальной документацией Docker по совместимости команд между новым compose
и старым docker-compose
.
Шаг 1 — Создание капли Docker
Вы начнете с создания Docker 1-Click Droplet, который доступен на нашем рынке и перенаправит вас на панель управления DigitalOcean. Помимо создания приложения Docker 1-Click через панель управления DigitalOcean, вы также можете использовать API DigitalOcean для создания этого Docker Droplet, но это не будет подробно рассмотрено в этом руководстве.
Чтобы создать Docker Droplet из приложения Docker 1-Click, нажмите кнопку Create Docker Droplet :
Создать каплю Docker
Если вы не вошли в свою учетную запись DigitalOcean, вам необходимо будет войти в систему, чтобы продолжить. Если у вас нет учетной записи, вам будет предложено зарегистрироваться.
Далее вы попадете на страницу Create Droplets . Здесь вы можете настроить параметры своего сервера перед созданием Docker Droplet. «Как создать свою первую каплю» подробно описывает все варианты, которые вам нужно будет сделать, но ниже приведены ключевые настройки, которые следует учитывать.
Выбор изображения:
Ваше изображение уже будет установлено на вкладке Marketplace с выбранным Docker. Если этот параметр не установлен, переключитесь на вкладку Marketplace и найдите Docker в поле ключевого слова поиска. При правильной настройке ваша панель управления будет выглядеть примерно так:
Создайте дроплет с образом Docker Marketplace
Будет выбран Docker 19.03.12 on Ubuntu 20.04 . Опять же, если это не так, используйте поле поиска для поиска Docker .
После правильного выбора образа Docker вы можете принять значения по умолчанию или настроить параметры в соответствии с вашим вариантом использования. Обычно мы рекомендуем следующие изменения:
Выбор региона дата-центра:
Чтобы избежать возможных задержек, рекомендуется выбрать регион центра обработки данных, ближайший к вашей базе пользователей. В некоторых регионах у нас более одного дата-центра. Нет никакой разницы между центрами обработки данных этих же регионов (например, SFO3 и SFO2).
Выбор плана:
Для запуска Droplet с Docker рекомендуется иметь как минимум 1 ГБ ОЗУ.
Выбор метода аутентификации
Рекомендуется использовать SSH Key , а не Password для вашей капли. Аутентификация с использованием ключей SSH обычно более безопасна.
Выбор дополнительных опций:
Добавление улучшенного мониторинга метрик и оповещений в ваш дроплет поможет вам отслеживать использование ресурсов дроплета с течением времени. Вы также можете рассмотреть возможность включения автоматического резервного копирования. Вы также можете вернуться позже, чтобы включить функцию резервного копирования в уже созданных вами дроплетах.
Выбор имени хоста:
Вы можете дать своей капле идентифицирующее имя, которое вам будет легче запомнить, например «Docker Droplet 1», или назвать ее в честь приложения, для которого вы будете ее использовать.
После того, как вы сделали все необходимые выборы, нажмите Create Droplet в нижней панели экрана панели управления. После создания капли будет отображен ее IP-адрес:
Копирование IP-адреса новой капли
Этот IP-адрес важен для подключения к вашей капле и для будущей настройки, которую вы, возможно, захотите выполнить. Наведя курсор на IP-адрес, вы можете скопировать его в буфер обмена.
Капли, созданные через 1-Click Marketplace, также содержат дополнительные ресурсы, к которым вы можете получить доступ, нажав Get started :
Начать работу с Droplet в 1 клик
При этом откроется новая панель, на которой вы сможете получить дополнительную информацию, специфичную для выбранного вами 1-Click. Сюда входит обзор, дальнейшие шаги по началу использования вашей капли и ссылки на соответствующие учебные пособия на сайте нашего сообщества. Кроме того, полезные ссылки, например, где получить поддержку и найти дополнительные ресурсы для Docker.
Начните работу с дополнительной информацией и ресурсами
Шаг 2. Доступ к капле через SSH для включения конфигурации
После того, как вы развернули Docker Droplet, вам нужно будет подключиться к нему через SSH. Это означает, что вы подключитесь к серверу из командной строки. Если вы раньше не использовали терминальную программу, такую как SSH или PuTTY, ознакомьтесь со статьей «Как подключиться к вашей капле с помощью SSH». Когда вы будете готовы, откройте терминал на своем компьютере и войдите в свою каплю как root через SSH с помощью этой команды, заменив IP-адрес на IP-адрес вашей капли:
- ssh корень@ ваш_server_ip
Шаг 3 — Работа с Docker и создание первого контейнера
Теперь, когда ваш Docker Droplet запущен и работает, вы можете начать работать с Docker. Введите следующую команду, чтобы отобразить список активных и неактивных контейнеров Docker:
- докер пс -а
Выход ИДЕНТИФИКАТОР КОНТЕЙНЕРА ИЗОБРАЖЕНИЕ КОМАНДА СОЗДАНО СТАТУС НАИМЕНОВАНИЯ ПОРТОВ
Ваш список контейнеров будет пустым, поскольку это недавно созданный Droplet и новая установка Docker. Чтобы начать изучать использование Docker и создать свой первый контейнер, вы можете следовать этому руководству, начиная с Step 3 «Как установить и использовать Docker в Ubuntu 20.04». В этом руководстве вы узнаете, как использовать образы Docker и создавать контейнер с приложением.
Для получения дополнительной информации об использовании Docker вы можете ознакомиться с такими руководствами, как «Как удалить образы, контейнеры и тома Docker».
Шаг 4. Создание нового пользователя и настройка разрешений и брандмауэров (необязательно)
В вашей новой капле будет только один пользователь, который является пользователем root по умолчанию. Хотя Docker может работать как пользователь root , у вас также есть возможность настроить нового пользователя и предоставить ему права администратора через sudo
. Это, наряду с другими рекомендациями по безопасности, можно найти в нашем руководстве по начальной настройке сервера с Ubuntu 20.04. Если вы хотите использовать Docker через нового пользователя, рекомендуется выполнить Step 2 инструкции «Как установить и использовать Docker в Ubuntu 20.04», чтобы обеспечить более краткое выполнение команд Docker.
Эта капля поставляется с настроенным UFW в качестве брандмауэра. По умолчанию порты 22
открыты для SSH, а также порты 2375
и 2376
для Docker. Хотя эти порты открыты для предоставления внешнего доступа к процессу Docker, если этот вариант использования не входит в сферу ваших потребностей, вы можете закрыть доступ к этим портам в своем брандмауэре.
Кроме того, хотя UFW выступает в качестве внешнего интерфейса для низкоуровневого брандмауэра iptables, Docker изменяет iptables напрямую для настройки связи с контейнерами и между ними. Это означает, что UFW не предоставит вам полную картину настроек брандмауэра. Вы можете переопределить это поведение в Docker, добавив --iptables=false
к демону Docker.
Заключение
Ваш Docker 1-Click Droplet теперь запущен и работает, однако функциональность контейнеров становится более очевидной, когда в них развертываются реальные приложения. Вот несколько руководств, охватывающих популярные варианты использования, которым можно следовать с помощью предустановленного программного обеспечения Docker и Docker Compose:
- Docker Compose с Node.js: Node.js — это среда выполнения языка программирования JavaScript, которая полезна при разработке многих приложений.
- Docker Compose с WordPress: WordPress — популярное решение для размещения собственного веб-сайта.
- Docker Compose с Laravel: Laravel — это мощная платформа для создания веб-сайтов с использованием языка PHP.
- Docker Compose с Nginx: Nginx — популярный веб-сервер и обратный прокси-сервер.
Чтобы узнать больше о Docker, ознакомьтесь с нашими многочисленными руководствами по Docker. Если вы заинтересованы в изучении контейнерных технологий, помимо Docker, вы можете узнать об оркестровке контейнеров. Контейнеры, обычно связанные с Kubernetes, например, в этом руководстве по созданию оптимизированных контейнеров для Kubernetes.