задний план
компании前端、后端
Построение и развертывание выполняются вручную. С расширением бизнеса скорость итерации проекта становится быстрее, количество персонала увеличивается, и выявляются различные проблемы. Через простой случай я поделюсь процессом построения фронт- Конечный и внутренний рабочий процесс автоматизации на основе Jenkins.После создания этого рабочего процесса нам нужно только локально инициировать отправку git, а остальная часть сборки одного пакета, развертывание кода, напоминание по электронной почте и другие функции автоматизированы, что делает непрерывным интеграция, непрерывная доставка и непрерывное развертывание просты и просты в эксплуатации.Реально решить многие проблемы ручного создания и развертывания.
Что такое Дженкинс?
Jenkins — популярный в отрасли инструмент непрерывной интеграции с открытым исходным кодом, широко используемый при разработке проектов, с такими функциями, как автоматическая сборка, тестирование и развертывание.
Установка военного пакета
- Скачайте пакет Jenkins War с официального сайта
- начинается команда,
java -jar jenkins.war --httpPort=8080
Можно использовать-server -Xms1024m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=512m
Ограничить использование памяти Jenkins
3. Открывается браузерhttp://127.0.0.1:8080/
4. Найдите пароль инициализации5. Выберите плагин по умолчанию6. Дождитесь завершения загрузки7. Установите пароль для входа
Скачать плагин
Manage Jenkins->Manage Plugins->高级(最下面)
Увеличить скорость загрузки Заменить URL по умолчанию
http://mirror.esuni.jp/jenkins/updates/update-center.json
Manage Jenkins->Manage Plugins->可选插件
Установите следующие плагины
- Публикация через SSH для подключения к удаленным серверам
- Плагин Deploy to container используется для публикации упакованных приложений на удаленных серверах.
- Maven Integration plugin
- Pipeline Maven Integration Plugin
- Плагин Gitlab Hook (автоматически компилируется при коммите git)
- Плагин GitLab (автоматически компилируется при коммите git)
- GitLab Authentication Plugin (автоматически компилируется при коммите git)
- WebHook (автоматически компилируется при коммите git)
- После завершения загрузки Locale перейдите в глобальную конфигурацию Locale->Settings zh-CN
- Dingding[Dingding] Плагин Dingding Jenkins Notifier
- Несколько SCM (настройте несколько git)
- Подключаемый модуль Git Parameter (параметризованная конфигурация)
Глобальная конфигурация
Manage Jenkins->Global Tool Configuration
Публикация через SSH (для удаленной отправки можно настроить более одного сервера)
Создайте новый проект maven
нажмите新建Item
备注:如果有父子关系的程序,父工程先install到仓库里面。
或者下载插件:Multiple SCMs(配置多个git)
Справочный адрес:Руководство по настройке Jenkins Принудительно указать пользовательский репозиторий maven job-->configure-->Build-->Цели и параметры: чистый пакет -Dmaven.repo.local=D:\dev\maven3.1.1\m2repository
如果要提交代码后自动化构建
Необходимо настроить: (требуются разрешения)
配置成功后
点击test可以测试自动部署
Параметризованная конфигурация Jenkins (выберите развертывание ветки)
1. Загрузите плагинGit Parameter
2. Свойства параметра конфигурации
3. Окончательный эффект
Уведомление о конфигурации гвоздя Jenkins
1. Настройте робота DingTalk 2. Установите плагин уведомлений DingTalk
3. Настройте уведомление после сборки проекта.
4. Настройте Jenkins для отправки сообщений в DingTalk.
5. Окончательный результат
Управление разрешениями Дженкинса
Установить плагинRole-based Authorization Strategy
Может получить доступ:Справочник по управлению разрешениями Jenkins
Межсервисное выполнение сценариев оболочки без пароля на сервере Jenkins
Сценарий. Во многих случаях Jenkins развертывается на отдельном сервере и отправляет упакованный пакет службы на целевой сервер для запуска. Неизбежно есть индивидуальные операции:
Например: перед отправкой на целевой сервер
备份
Пакет обновления, работающий на текущем сервере, должен быть定制化的shell
скрипт для выполнения этой операции. Вводить пароль каждый раз определенно ненадежно.
Поэтому необходимо настроить сервер Jenkins для входа на целевой сервер без пароля.
参考
:
[Xiaobai] linux вход без пароля
приложение
docker部署不建议使用,推荐使用war启动Jenkins
Скачать зеркало
docker pull jenkins/jenkins:lts
установить образ
docker run --name jenkins --user=root -p 8080:8080 -p 50000:50000 -v /Users/wei/Documents/jenkins_home:/var/jenkins_home -d jenkins/jenkins:lts
Размонтировать контейнер
docker rm -f $(docker ps -a | grep "jenkins" | awk '{print $1}')
Ссылаться на
Документация Дженкинса на китайском языке