Запустить контейнер Docker как службу в Ubuntu

Docker Изучение

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

Многие пользователи захотят удалить текущие мультисервисные приложения с виртуальных машин и запустить их в контейнеры для многих сервисов. Они хотят, чтобы эти приложения были разбиты на микросервисы; однако некоторые люди не могут или не успевают. Имеет смысл использовать их как службы, запускаемые из файлов модулей systemd.

Файлы системных модулей: большинство программ, работающих в контейнерах, состоит из кода виртуальной машины или хоста. Эти приложения имеют единичный файл, подготовленный для приложения, и понимают выполнение программы. Лучше, чем взламывать собственные службы инициализации, запускать службу поддерживаемым способом.

Что такое Docker?

Docker призван помочь инженерам и командам стать более продуктивными и менее подверженными ошибкам. Создание и реализация новых проектов с помощью Docker проще и быстрее.

Рассмотрим сценарий, в котором установлена ​​ваша операционная система Windows, а ваше приложение должно быть развернуто и протестировано в отдельной операционной системе — Fedora, CentOS и Ubuntu. Чем ты планируешь заняться? Вы хотите все это разместить на своем ноутбуке? Это очень просто?

Рассмотрим случай, когда вам нужно использовать несколько версий приложения Python, например Python 3.2, Python 3.8 и т. Д., И различные комбинации веб-серверов, такие как NGINX и Apache. Чем ты планируешь заняться? Здесь Docker вас и спасет.

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

Допустим, вы используете Ubuntu 20.02 и Python 3.2 для развертывания / сборки своего приложения. Вы можете создать образ докера для выполнения кода в контейнере Docker, содержащем многослойный файл.
Доступен образ докера для правильной работы вашего проекта с системными библиотеками, инструментами, файлами и любыми другими зависимостями.

Запустить Docker Container As Service

Допустим, ваше приложение называется «X». Чтобы запустить контейнер приложения как службу с использованием systemd, создайте следующий служебный файл в каталоге / etc / systemd / system с именами как
’docker.some_name.service’:

[Unit]
Description=X container
After=docker.service
Wants=network-online.target docker.socket
Requires=docker.socket

[Service]
Restart=always
ExecStart=/usr/bin/docker start -a some_name
ExecStop=/usr/bin/docker stop -t 10 some_name

[Install]
WantedBy=multi-user.target

Файловый модуль создает новую службу и сопоставляет инструкции запуска и остановки стыковки с последовательностями запуска и остановки службы.

Чтобы включить службу с загрузкой системы, используйте:

systemctl enable docker.some_name

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

sudo service docker.some_name stop
sudo service docker.some_name start

Вывод

В этой статье мы показали подход к развертыванию контейнеров Docker в качестве системных служб в Ubuntu. Это простая альтернатива другим инструментам для оркестровки контейнеров. Мы можем использовать Docker в различных задачах, связанных с разработкой и тестированием нашего приложения. Это улучшает фазу тестирования нашего приложения. Мы можем использовать его для управления версиями всей операционной системы вашего приложения. Еще одно использование Docker — это сотрудничество с командой разработчиков операционной системы вашего приложения. Вы также можете выполнить код своего портативного компьютера в той же среде, что и ваш сервер, с помощью Docker.

Оцените статью
bestprogrammer.ru
Добавить комментарий