Это первый день моего участия в августовском испытании обновлений, подробности о мероприятии:Испытание августовского обновления
предисловие
Для автоматизированного развертывания переднего плана я на самом деле написал статью доАвтоматизированное развертывание интерфейса Jenkins, Метод реализации заключается в полной ручной настройке конфигурации среды различных инструментов, таких как nginx и jenkins. Недавно я планирую изучить докер, поэтому на этот раз я использую докер, чтобы попрактиковаться в автоматическом развертывании переднего плана.
Подготовка окружающей среды и введение
- Сервер: CentOS 7.6
- docker
- docker-compose
- изображение nginx
- Дженкинс Зеркало
- Удаленный проект gitee: легко протестировать, на этот раз с использованием облака кода
Установите среду докера
- Установите Докер СЕ
sudo yum install docker-ce
- Запустите службу Docker
sudo systemctl enable docker // 设置开机自启
sudo systemctl start docker // 启动docker
- Проверьте, прошла ли установка успешно
docker -v
Посмотреть номер версии
Установить докер-компоновку
Compose — это инструмент для определения и запуска многоконтейнерных приложений Docker. С помощью Compose вы можете использовать файлы YAML для настройки служб вашего приложения. Затем одной командой создайте и запустите все сервисы из конфигурации
- Установить
$ sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
- Применить исполняемые разрешения к двоичным файлам
$ sudo chmod +x /usr/local/bin/docker-compose
3. Подтвердите успех
Установите образы nginx и jenkins
Установите образ nginx
docker pull nginx
Установить образ Дженкинса
Посмотреть список зеркал
docker search jenkins
Это зеркалоjenkinsci/blueocean
(Синий океан)
docker pull jenkinsci/blueocean
Посмотреть зеркало
Выполнить после завершения установкиdocker images
Просмотр установленных образов
написать каталог конфигурации
Для простоты управления мы объединяем Nginx и Jenkins в один файловый каталог под докером. Структура каталогов выглядит следующим образом
+ compose
- docker-compose.yml // docker-compose执行文件
+ nginx
+ conf.d
- nginx.conf // nginx配置
+ jenkins
- jenkins_home // jenkins挂载卷
+ webserver
-static //存放前端打包后的dist文件
Конфигурация файла и создание контейнера
docker-compose.yml
cd /home/compose
vim docker-compose.yml
nginx.conf
cd /home/nginx/conf.d
vim nginx.conf
Создать контейнер
существуетdocker-compose.yml
Выполните команду в каталоге, где находится файл, чтобы создать контейнер
docker-compose up -d
docker-compose stop //停止nginx和jenkins 两者结合可以进行重启
воплощать в жизньdocker ps
Посмотреть статус контейнера
Конфигурация Дженкинса
После запуска контейнера вы можете ввести в браузере IP-адрес сервера: 8080, чтобы войти в интерфейс управления jenkins. Работа по инициализации игнорируется, как объяснялось в предыдущей статье.
Конфигурация плагина
Войдите в управление плагинами
-
УстановитьPublish Over SSHФункция: публикация скомпилированного вывода после сборки на сервер.
-
УстановитьGeneric Webhook Trigger PluginРоль: общая конструкция триггера Webhook
Глобально настроить ssh-сервер
Глобальная конфигурация инструмента node.js
Создайте новую задачу и конфигурацию jenkins
Новое задание
Конфигурация задачи — управление исходным кодом
Конфигурация задачи — триггеры сборки
- Способ выбора универсального триггера Webhook
- настроить токен
- Ассоциированный дом
Добавьте вебхук в меню управления проектами gitee.
Конфигурация задачи — среда сборки
Выберите node.js, ранее настроенный в глобальных инструментах.
Конфигурация задачи — сборка
- Построить выбрать выполнить оболочку
- Упакуйте скомпилированный продукт в архив и зарезервируйте его для операций после сборки.
Конфигурация задач - послестроение действий
- Поместите пакет tar в каталог, указанный сервером
- Разархивируйте пакет tar и поместите материал в рабочий каталог nginx.
Test
Наконец, выберите «Применить и сохранить». Нажмите на основную ветку в локальном проекте git, вы обнаружите, что удаленный jenkins запустил автоматическое развертывание.
конец
На этом простое автоматическое развертывание интерфейса Docker завершено.
По сравнению с традиционной конфигурацией nginx, Jenkins с помощью Docker позволяет не только быстро внедрить, но и изолировать среду и избежать зависимости от среды.
Техническая справка:nuggets.capable/post/684490…