ЧТО ТАКОЕ DOCKER?
Docker — это программное обеспечение, упрощающее процесс управления процессами приложения в контейнерах. Которые позволяют запускать приложения в процессах с изолированными ресурсами. Они сильно похожи на виртуальные машины, но более портативные, более эффективно расходуют ресурсы и в большей степени зависят от операционной системы.
Докер решает сразу несколько задач – процесс запуска приложения на сервере многократно упрощается, и какие-либо проблемы в контейнеризированном приложении никак не повлияют на сам сервер, также как и специфические настройки сервера не повлияют на приложение.
Докер выглядит и работает как виртуальная машина, на самом деле они очень разные: виртуальная машина эмулирует сервер целиком, включая все аппаратные ресурсы, а контейнер изолирует приложение, процессы, юзеров и файловую систему. При этом все контейнеры используют общее Linux ядро хоста и запускается в нативном режиме только на Linux машинах, но зато на одной машине можно запустить больше контейнеров, чем виртуальных машинах.
УСТАНОВКА DOCKER
Пакет установки Docker, доступный в официальном репозитории Debian, может представлять собой не самую последнюю версию. Чтобы точно использовать самую актуальную версию, установим Docker из официального репозитория Docker. Для этого надо добавить новый источник пакета, ключ GPG от Docker, чтобы гарантировать загрузку рабочих файлов, а затем установим пакет.
Первым делом обновите существующий список пакетов:
sudo apt update
Затем установите несколько необходимых пакетов, которые позволяют apt
использовать пакеты через HTTPS:
sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common
Добавьте ключ GPG для официального репозитория Docker в вашу систему:
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
Добавьте репозиторий Docker в источники APT:
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
Теперь обновим базу данных пакетов и добавим в нее пакеты Docker из недавно добавленного репозитория:
sudo apt update
Затем устанавливаем Docker:
sudo apt install docker-ce
Проверяем, что Docker запустился и работает:
service docker status
УСТАНОВКА PORTAINER
Portainer – это очень удобный графический интерфейс для управления Docker или Docker Swarm. Устанавливается он практически в одно действие – так как сам точно также является контейнером. Итак:
Создаем разметку для Portainer:
docker volume create portainer_data
И затем запускаем сам контейнер:
docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
После чего заходите на сетевой адрес вашего сервера на порт 9000, и вы должны увидеть окно с предложением установить пароль администратора:
Далее выбираем где находится наш Докер – на этом же сервере, или на другом (в нашем случае – Local) и кликаем Connect.
После чего вас встретит красивый дэшборд:
Итак, сначала кликните на Containers – вы увидите все имеющиеся контейнеры с информацией о них:
Как вы можете видеть, у нас на данный момент запущен только один контейнер – Portainer, и доступ к нему открыт по порту 9000 (столбец Published Ports), и адрес во внутренней сети Docker – 172.17.0.2.
Далее кликните на App Templates в меню справа – и вы увидите весь список приложений, который можно запустить одним кликом:
Зайдем во вкладку Nginx
Сперва, назовите данный контейнер как-нибудь – мы назвали nginx-disnetern.ru. Затем, можете кликнуть на Show advanced options и вы увидите возможность выбора какой порт, протокол и том будет использоваться данным контейнером. Затем просто нажмите на Deploy the container.
Пройдет буквально несколько секунд и вас должно перекинуть обратно на вкладку Containers, но, с уже вторым запущенным контейнером:
Отсюда вы увидите, что nginx сервер доступен на 32769 порту.