Контейнеры являются отличным способом развертывания изолированных экземпляров служб и приложений. С помощью этих контейнерных инструментов вы можете легко перемещать их с одного сервера на другой, быстро обновлять и даже развертывать в кластере для большой масштабируемости. Мы проведем вас через процесс установки одного из самых популярных на рынке контейнерных инструментов Docker, а затем развернем веб-сервер NGINX.
Монтаж
Джек Валлен
Установка Docker на Ubuntu 18.04 невероятно проста. Откройте окно терминала (или войдите в свой сервер Ubuntu через SSH). Перед установкой Docker лучше всего обновить и обновить сервер. Помните, однако, что если обновление включает ядро, вам необходимо перезагрузить сервер, чтобы изменения вступили в силу. Из-за этого выполняйте команды обновления / обновления во время, когда возможна перезагрузка сервера.
Команды для обновления и обновления Ubuntu Server:
sudo apt-get update
sudo apt-get upgrade
Когда эти две команды завершатся (и вы перезагрузитесь, если это потребуется), вы можете установить Docker, введя следующую команду:
sudo apt-get установить docker.io
Как только эта команда завершится, запустите и активируйте Docker с помощью команд:
sudo systemctl запускает докер
sudo systemctl включить докер
Мы включаем Docker, чтобы он автоматически запускался при перезагрузке сервера.
Затем вы захотите добавить своего пользователя в группу Docker (в противном случае вам придется запускать команды Docker с привилегиями sudo, что может привести к проблемам с безопасностью). Об этом можно позаботиться с помощью одной команды:
sudo usermod -aG docker $ USER
Если вам интересно, следующее объясняет приведенную выше команду:
- usermod — это фактическая команда для изменения пользователя.
- Опция указывает usermod, который мы добавляем к пользователю.
- Опция G указывает usermod, что мы добавляем пользователя в группу.
- Докер — это группа, в которую мы добавляем пользователя.
- $ USER инструктирует bash использовать текущего пользователя.
После выполнения вышеуказанной команды необходимо выйти и снова войти, чтобы изменения вступили в силу.
Теперь вы готовы начать работать с Docker.
Вытащить изображения из DockerHub
Джек Валлен
DockerHub — это централизованное хранилище, в котором хранятся изображения, которые можно использовать в качестве основы для ваших контейнеров. DockerHub содержит тысячи изображений, некоторые из которых служат очень конкретным (и даже нишевым целям). Поскольку наша цель — развернуть контейнер NGINX, мы собираемся развернуть официальный контейнер NGINX. Прежде чем мы это сделаем, выполните команду:
докер изображения
Выходные данные этой команды не должны показывать текущие изображения, которые будут найдены. Опустите образ NGINX с помощью команды:
докер тянуть nginx
Приведенная выше команда опускает изображение. Если вы выдадите образы команды Docker, вы увидите список недавно вытащенных изображений.
Джек Валлен
Развертывание контейнера NGINX
Джек Валлен
Теперь, когда у нас есть образ для создания нашего контейнера, мы собираемся развернуть контейнерный экземпляр NGINX в нашей сети. С NGINX в качестве контейнера вы можете контролировать, на каком порту он развернут. Мы развернем NGINX на стандартном порту 80. Чтобы это произошло, команда выглядит следующим образом:
docker run --name docker-nginx -p 80:80 nginx
Небольшое объяснение приведенной выше команды:
- Докер является фактической командой
- run инструктирует команду, что то, что следует, должно выполняться с командой.
- —name дает нашему контейнеру удобочитаемое имя.
- -p указывает Docker, какие порты будут использоваться.
- 80:80 — Первый 80 — это внешний порт (используемый в вашей сети), а второй 80 — это внутренний порт (используемый Docker).
- nginx — изображение, которое будет использоваться для контейнера.
После того как вы развернете этот контейнер, вы сможете указать браузеру http: // SERVER_IP (где IP-адрес сервера — это IP-адрес сервера, на котором размещается Docker) и увидеть страницу приветствия NGINX. Вы также заметите, что не получаете обратно командную строку. Почему? Мы запустили команду в прикрепленном режиме. Если вы нажмете комбинацию клавиш Ctrl + c, контейнер будет уничтожен, и вы получите ответ. Если вы хотите, чтобы контейнер работал, и вернули приглашение, вы должны развернуть контейнер в отдельном режиме, например:
docker run - имя docker-nginx -p 80:80 -d nginx
Джек Валлен
Однако, поскольку мы уже развернули первый контейнер, вы увидите ошибку. Чтобы избежать этого, мы должны остановить первый контейнер командой docker stop. Чтобы сделать это, вы должны принять к сведению имя контейнера (оно будет напечатано в ошибке), которое представляет собой длинную строку случайных символов. Чтобы выполнить эту команду, вам нужно использовать только первые четыре символа контейнера, например:
Докер Стоп F149
Далее мы должны удалить контейнер с помощью команды:
Докер RM F149
Оригинальный контейнер теперь остановлен и был удален. Затем вы можете успешно повторно развернуть контейнер NGINX в отдельном режиме.