1. Что такое ДЖЕНКИНС
Jenkins - это автономный сервер автоматизации откровенного источника, который можно использовать для автоматизации различных задач, связанных с созданием, тестированием, доставкой или развертыванием программного обеспечения.
Дженкинс может быть установлен с помощью нативных системных пакетов, Docker или даже автономной от любой машины с помощью среды Runtime Java (JRE)
2. Установите jenkins в систему centos.
три пути
- Установить через докер
- запустить в tomcat через jenkins.war
- Установить через юм
2.1 Установка через докер
- Создание файла Jenkins и изменение разрешений на файл
mkdir -p /usr/local/atom.hu/jenkins
chown -R 1000:1000 /usr/loca/atom.hu/jenkins
- вытащить изображение
docker pull jenkins
- загрузочный образ
docker run -p 8080:8080 -p 50000:50000 --name jenkins --privileged=true -v /usr/local/atom.hu/jenkins/:/var/jenkins_home -d jenkins
-
Подожди немного
-
Войдите в каталог для просмотра пароля
[root@localhost secrets]# cat initialAdminPassword
9ca7368042fe45be8b693ab43e7797d1
2.2 Установка с помощью jenkins.war
существуетофициальный сайт ДженкинсаСкачать пакет войны в
Вы можете щелкнуть правой кнопкой мыши, чтобы скопировать адрес программного обеспечения, и использовать команду wget для загрузки
wget http://mirrors.jenkins.io/war-stable/latest/jenkins.war
После завершения загрузки поместите проект вtomcat
серединаwebapps
в папке
2.3 Установите jenkins через yum
Получить источник установки программного обеспечения
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
Установка Дженкинса
yum -y install jenkins
После завершения установки запустите jenkins
systemctl start jenkins
В ходе экспериментов с тремя методами каждый из них был изучен и, наконец, выбран вариант установки через yum, который также является наиболее трудоемким методом установки, но он относительно надежен.Хотя метод установки Docker прост, он столкнется со многими программами. Проблема. Способ использования jenkins.war относительно прост, но он также столкнулся со многими проблемами, и в конце концов сдался и принял самый примитивный и хлопотный способ.
3.0 Необходимые условия для использования jenkins для автоматизации развертывания
Для того, чтобы последующая конфигурация могла пройти гладко, требуются некоторые предварительные приготовления.
Измените файл конфигурации jenkins
# 打开jenkins的配置文件
vim /etc/sysconfig/jenkins
# 修改 $JENKINS_USER 的值为root
$JENKINS_USER="root"
Изменить разрешения пользователя для папки, связанной с Jenkins
chown -R root:root /var/lib/jenkins
chown -R root:root /var/cache/jenkins
chown -R root:root /var/log/jenkins
Перезапустите службу Jenkins и проверьте, запустил ли пользователь Jenkins, переключился на root
# 重启Jenkins(若是其他方式安装的jenkins则重启方式略不同)
systemctl restart jenkins
# 查看Jenkins进程所属用户
ps -ef | grep jenkins
# 若显示为root用户,则表示修改完成
Пока что, даже если подготовительные работы завершены, можно приступать к автоматическому развертыванию jenkins
4.0 Установить плагин в jenkins
В jenkins новичкам рекомендуется установить рекомендуемый плагин напрямую.После установки пароля администратора войти в основной интерфейс.Помните, чтобы не забыть пароль.Хотя есть решения,но лучше запомнить пароль.
Установите необходимые плагины jenkins
Git Parameter Plug-In
В последующем автоматическом развертывании нам нужно задать разные ветки через параметры, упаковать разные ветки и нужна поддержка этого плагина
Maven Integration plugin
При деплое проекта spring boot нам нужно создать проект maven.После установки этого плагина при создании проекта, если такого плагина нет, то при создании проекта он будет недоступен.构建一个maven项目
Опции
Publish Over SSH
Иногда jenkins, которые мы создаем на машине A, могут быть развернуты на машине B, что требуетPublish Over SSH
служба поддержки
Обратите внимание, что при заполнении IP-адреса хоста, если две машины принадлежат одному оператору, лучше максимально заполнить IP-адрес интрасети, это очень важно.
5.0 Добавьте соответствующую среду поддержки на сервер
- Установите openjdk 1.8 Для работы jenkins требуются зависимости openjdk
Официально
You will need to explicitly install a Java runtime environment, because Oracle's Java RPMs are incorrect and fail to register as providing a java dependency. Thus, adding an explicit dependency requirement on Java would force installation of the OpenJDK JVM.
yum install java-1.8.0-openjdk
- установить git
yum install git
- Установите узел, интерфейсный проект будет развернут позже
# 下载安装包
wget https://nodejs.org/dist/v10.15.3/node-v10.15.3-linux-x64.tar.xz
# 解压
tar -xvf node-v10.15.3-linux-x64.tar.xz -C ./
# 将node命令和npm设置软连接到 /usr/bin 中
ln -s ./node /usr/bin/node
ln -s ./npm /usr/bin/npm
# 然后在其他的地方都可以使用这两个命令了
- Установить
maven
, И в/etc/profile
Средняя конфигурация
6.0 Конфигурация системы
В инструменте глобальной конфигурации настройтеjdk
, maven
, git
, node
путь установки
7.0 Автоматизированное развертывание внешнего интерфейса vue проекта
Сценарий развертывания, пакет webpack на машине A, отправка упакованных файлов в указанную папку на машине B и доступ через прокси-сервер nginx
- Создайте проект программного обеспечения в свободном стиле
2. Заполните описание проекта
- Выберите параметризованный процесс сборки, а затем вы можете выбрать разные ветки для упаковки.
- Выберите различные инструменты управления версиями, SVN и Git могут быть доступны, здесь мы используем Git
- Выберите в среде сборки
Send files or execute commands over SSH after the build runs
Конфигурация здесь такова, после завершения локальной сборки, какие файлы нам нужно отправить на целевой хост, на целевой хост и какие команды выполнить.
cd /home/project/web/test
tar -zxvf dist.tar.gz
rm -rf dist.tar.gz
/home/project/web/test
Каталог, настроенный для целевого хоста nginx
- проверено в сборке
Execute Shell
и настройте команду для выполнения во время сборки
cnpm i &&
rm -rf dist &&
npm run build &&
cd dist&&
tar -zcvf dist.tar.gz *
Нажмите «Сохранить», чтобы завершить создание внешнего проекта.
8.0 Автоматическое развертывание проектов весенней загрузки
- Создайте новую задачу, создайте проект maven
- Заполните описание проекта, настройте параметры для сборки
- Настройка управления исходным кодом
- Настройте ssh-сервер среды сборки
BUILD_ID=DONTKILLME
source /etc/profile;
cd /home/project/java/test&&
pid=`ps -ef | grep 'jar 名称' | grep -v grep | awk '{print $2}'`
if [ -n "$pid" ]
then
kill -9 $pid
fi
java -jar lk-truck-mendery-webfront-1.0.0-SNAPSHOT.jar > nohup.log &
будь осторожен
-
shell
нужно добавить передBUILD_ID=DONTKILLME
, иначе после того, как Дженкинс создает процесс Java, когда он выходит, он убьет ранее созданный проект - нужно добавить перед
source /etc/profile
, иначе может бытьjava
Команда не найдена
На этом проект springboot завершен.
9.0 Что делать, если я забыл пароль после установки пароля
- Перейдите в файл конфигурации jenkins
cd /var/lib/jenkins/users
vim config.xml
Замените значение по пути на
#jbcrypt:$2a$10$DdaWzN64JgUtLdvxWIflcuQu2fgrrMSAMabF5TSrGK5nXitqK9ZMS
После замены,重启jenkins
systemctl restart jenkins
Пароль для входа становится 1111111