Начало работы: установка jenkins на виртуальную машину azure linux

Configuring Jenkins

You can configure the Jenkins service on port 8080 of your system, but Jenkins is temporarily locked with a password present in the   file. You can access Jenkins by providing the password after reading the file.

Image

Remember to open the file with root user permissions as it is not accessible otherwise.

Install the suggested plugins for Jenkins. They are compatible with most versions, but if you want to do something specific, you can also select and work with the plugins you wish.

Image

The plugins will take some time to install depending on the connectivity speed, so be patient.

Create an admin user. Make sure you remember the username and password, as they are the credentials for accessing the Jenkins WebUI.

Image

Specify if you wish to change the port for your Jenkins. It is preferred to use Jenkins on 8080 port.

Image

Jenkins setup is complete and it can be accessed with the URL that is configured for it.

Image

Первый билд (джоба) на Jenkins-е

Создаем проект под свои нужды. Потом, создаем «Pipeline» проект, например:

Тестовый pipeline projec для Java

Нажимаем на «OK» и сейчас создадим все необходимое.

Находим «Run the build inside Docker containers» и ставим чекбокс. В поле «Docker Image» ставим наш образ, у меня — «jenkinsci/jnlp-slave:latest». Так же, можно прописать «Advanced settings» опции и выставить использовании по памяти. У меня все имеет вид:

Идем дальше, находим «Pipeline» вкладку и заполняем ее под свои нужды. У меня все приведено и имеет вид:

Т.е я заюзал свой гитлаб сервер. В нем есть репозиторий с проектом. Так же, добавил подключение к гитлабу. Собственно, все готово, можно нажимать на «SAVE»!

Слева вверху, нажимаем на «Build Now» и смотрим что получилось!

Если открыть «Manage Jenkins» -> «Manage Nodes», то появится jenkins-slave:

Видно что поднялся слейв и запустил джобу. Можно открыть ее и поглядеть статус выполнения:

Я думаю что на этом пока все, статья «Установка Jenkins и Jenkins-slave в Unix/Linux» завершена.

Установка

Лично я выполняю весь процесс установки от пользователя root, но так как такая практика не рекомендуется, то можно просто предварять команды sudo. Либо же можно ступить на тёмную сторону силы и сделать, например, sudo -i .

Для начала добавим PGP-ключ репозитория и сам репозиторий в нашу систему:

wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | apt-key add -
echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list

обновим список пакетов в кеше APT

aptitude update

и установим сам Jenkins

aptitude install jenkins

Панель Jenkins после установки

После установки он автоматически запускается и можно сразу переходить в веб-интерфейс, который располагается на порту 8080 вашего сервера. Как вы можете заметить, он открыт внешнему миру и никак не защищён. Самое время настроить аутентификацию и права доступа.

Работа с Jenkins в CLI

По умолчанию, необходимый для работы с Jenkins из командной строки файл jenkins-cli.jar не копируется в систему.

Его нужно скачать. Выполняем:

wget http://127.0.0.1:8080/jnlpJars/jenkins-cli.jar -P /usr/local/bin/

* таким образом, мы скачаем файл с собственного сервера и разместим его в папке /usr/local/bin/.

Теперь можно выполнять команды с синтаксисом:

java -jar /usr/local/bin/jenkins-cli.jar -auth <имя пользователя>:<пароль> -s http://127.0.0.1:8080/ <выполняемые команды и опции>

Например, получить список команд можно так:

java -jar /usr/local/bin/jenkins-cli.jar -auth admin:admin -s http://127.0.0.1:8080/ -webSocket help

* где admin:admin — логин и пароль от административной учетной записи.

Инсталляция Jenkins

Как было сказано выше, мы установим openjava, сервис Jenkins и завершим развертывания на портале. Итого, 3 этапа.

1. Установка openjdk

Выполняем команду:

yum install java-11-openjdk-devel

Выбираем директорию для java по умолчанию с помощью утилиты update-alternatives:

update-alternatives —config java

И на запрос:

  Selection    Command
————————————————
*+ 1           java-11-openjdk.x86_64 (/usr/lib/jvm/java-11-openjdk-11.0.9.11-0.el8_2.x86_64/bin/java)

… выбираем единственно предложенный вариант:

Enter to keep the current selection, or type selection number: 1

* если в системе установлено несколько версий java, выбираем актуальную.

Готово. Смотрим версию установленной java:

java -version

Мы должны увидеть что-то на подобие:

openjdk version «11.0.9» 2020-10-20 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.9+11-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.9+11-LTS, mixed mode, sharing)

2. Установка Jenkins

Для установки сервиса Jenkins добавляем репозиторий:

wget -P /etc/yum.repos.d/ https://pkg.jenkins.io/redhat-stable/jenkins.repo

Импортируем публичный ключ для подключения к репозиторию:

rpm —import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

Устанавливаем jenkins:

yum install jenkins

Разрешаем автозапуск и стартуем сервис:

systemctl enable jenkins

systemctl start jenkins

3. Завершение установки

Открываем браузер и переходим по адресу http://<IP-адреса сервера Jenkins>:8080 — откроется окно «Unlock Jenkins». В нем будет путь до файла, в котором нужно взять парольную фразу для разблокировки портала:

И так, на сервере вводим команду:

cat /var/lib/jenkins/secrets/initialAdminPassword

* где /var/lib/jenkins/secrets/initialAdminPassword — полный путь до файла, который отображен на стартовой странице установки.

Мы должны увидеть что-то на подобие:

# cat /var/lib/jenkins/secrets/initialAdminPassword
35635dce8b014707a2ec90937763cfe3

Используем данный пароль и вставляем его в поле Administrator password:

В следующем окне выбираем вариант установки плагинов — рекомендованные или по выбору:

* если мы не слишком хорошо знакомы с продуктом, выбираем рекомендованные плагины.

Начнется процесс развертывания Jenkins:

После создаем учетную запись для администратора:

На последней странице мы можем задать URL-адрес для нашего портала (или оставить IP-адрес):

Установка завершена.

Install Open Java Development Kit

The latest stable version of OpenJDK can be installed from the official Ubuntu package repository. At the time of writing this post, the latest stable version of the Open Java Development kit was OpenJDK 11.

First, update the system’s APT cache repository:

$ sudo apt update

Type the command given below to install OpenJDK 11:

$ sudo apt install openjdk-11-jdk

If it asks for taking additional disk space, type “y” and hit “Enter”.

After the completion of the installation process, the version of Java can be verified by typing the given command below:

$ java —version

You can witness that version 11.0.9.1 is successfully installed on Ubuntu 20.04 system. Now, we can move to the installation of Jenkins.

Post-installation setup wizard

After downloading, installing and running Jenkins using one of the procedures
above (except for installation with Jenkins Operator), the post-installation setup wizard begins.

This setup wizard takes you through a few quick «one-off» steps to unlock
Jenkins, customize it with plugins and create the first administrator user
through which you can continue accessing Jenkins.

Unlocking Jenkins

When you first access a new Jenkins instance, you are asked to unlock it using
an automatically-generated password.

  1. Browse to (or whichever port you configured for
    Jenkins when installing it) and wait until the Unlock Jenkins page appears.

  2. From the Jenkins console log output, copy the automatically-generated
    alphanumeric password (between the 2 sets of asterisks).

    Note:

    • The command: will print the password at console.

    • If you are running Jenkins in Docker using the official image you can use to print the password in the console without having to exec into the container.

  3. On the Unlock Jenkins page, paste this password into the Administrator
    password field and click Continue.Notes:

    • You can always access the Jenkins console log from the Docker logs
      ().

    • The Jenkins console log indicates the location (in the Jenkins home directory)
      where this password can also be obtained. This password must be entered in the
      setup wizard on new Jenkins installations before you can access Jenkins’s main
      UI. This password also serves as the default admininstrator account’s password
      (with username «admin») if you happen to skip the subsequent user-creation
      step in the setup wizard.

Customizing Jenkins with plugins

After , the Customize Jenkins page
appears. Here you can install any number of useful plugins as part of your
initial setup.

Click one of the two options shown:

  • Install suggested plugins — to install the recommended set of plugins, which
    are based on most common use cases.

  • Select plugins to install — to choose which set of plugins to initially
    install. When you first access the plugin selection page, the suggested
    plugins are selected by default.

If you are not sure what plugins you need, choose Install suggested
plugins.
You can install (or remove) additional Jenkins plugins at a later point in time
via the
Manage Jenkins >
Manage Plugins page in Jenkins.

The setup wizard shows the progression of Jenkins being configured and your
chosen set of Jenkins plugins being installed. This process may take a few
minutes.

Creating the first administrator user

Finally, after , Jenkins asks you to create your first administrator user.

  1. When the Create First Admin User page appears, specify the details for your
    administrator user in the respective fields and click Save and Finish.

  2. When the Jenkins is ready page appears, click Start using Jenkins.Notes:

    • This page may indicate Jenkins is almost ready! instead and if so, click
      Restart.

    • If the page does not automatically refresh after a minute, use your web
      browser to refresh the page manually.

  3. If required, log in to Jenkins with the credentials of the user you just
    created and you are ready to start using Jenkins!

1.6, обновите источник загрузки плагина

3. Конфигурация проекта Maven

// Отправляем исходный код в git, при отправке есть pom.xml

// После нажатия кнопки «Сохранить» нажмите кнопку «Создать сейчас»

// Нажмите build и проверьте информацию консоли, чтобы проверить статус. После этого вы должны сначала изменить адрес зеркала maven

// Полная информация

3.3 Пример: настройка Jenkins для поддержки автоматической компиляции maven (svn)

// Каталог svn должен содержать эти два каталога и файл pom.xml,

// Если вручную, поместите пакет .war непосредственно под tomcat, а затем измените файл конфигурации, чтобы запустить его напрямую

F.1. Зависимый пакет не разрешен, и чтение из центрального хранилища Maven не удается

Решение:Изменить адрес внутреннего зеркала mavenИзмените файл конфигурации maven:Адрес установки исходного кода: /usr/local/maven/conf/settings.xmlyum должен быть: rpm -qi maven Просмотреть путь, по которому находится файл settings.xml Изменить зеркало

F.2, ошибка разрешения git (возвращен код состояния 128: stdout :)

Решение:Поскольку локальный .ssh / id_rsa.pub обновлен, вам необходимо добавить содержимое id_rsa.pub jenkins в /home/git/.ssh/authorized_keys на сервере git

Настройка прав доступа

После того как мы настроили вход, нужно закрыть доступ посторонним людям. Для этого можно использовать несколько способов, самым простым из которых будет «Matrix-based security». Здесь главное сделать две вещи:

  • Выставить пользователю «Anonymous» доступ к действию «Read» в категории «View», иначе Jenkins может работать некорректно
  • Вместе с этим сразу же, не сохраняя перед этим настройки, создать пользователя, под которым в дальнейшем будет происходить управление системой, иначе после применения этих настроек, вы не сможете зайти в интерфейс Jenkins. Если вы аутентифицируетесь через внешний сервис — укажите имя пользователя на этом сервисе

Установка прав доступа при первичной настройке

Перепроверьте настройки и нажимайте кнопку «Save».

Первый вход или создание пользователя

После сохранения настроек вы попадёте либо в форму входа, либо будете перенаправлены на внешний сервис аутентификации.

Вход со встроенной базой пользователей

Jenkins направит вас на форму входа. У вас же ещё нет пользователя, поэтому удалите лишнее из адреса и перейдите в корень веб-интерфейса — вам будет показана форма создания пользователя.

Вход через Bitbucket

Подтверждение доступа через Bitbucket

В случае с Bitbucket или другим внешним сервисом нет необходимости регистрации, поэтому вам нужно будет лишь подтвердить на этом сервисе, что вы доверяете приложению. После этого вы вернётесь в систему уже полноправным администратором (если, конечно, выставили такие права своей учётной записи).

Установка Дженкинс

Для установки Jenkins на Debian 10 выполните следующие действия как пользователь root или пользователь с привилегиями sudo:

  1. Jenkins написан на Java, поэтому первым шагом является установка Java. Для этого обновите индекс пакета и установите пакет OpenJDK 11 с помощью следующих команд:

    Версия Java LTS 8 недоступна в официальных репозиториях Debian Buster. Если вы хотите запустить Jenkins с Java 8, проверьте это руководство по установке.

    Используйте для загрузки и импорта ключей GPG хранилища Jenkins:

    Команда должна вернуть , что означает, что ключ был успешно импортирован, и пакеты из этого хранилища будут считаться доверенными.

    Выполните следующую команду, чтобы добавить хранилище Jenkins в вашу систему:

    Обновите список пакетов и установите последнюю версию Jenkins:

    Включите и запустите службу Jenkins, выполнив:

Возможные ошибки

Public key for jenkins is not installed

В процессе установки мы можем получить сообщение на подобие:

warning: /var/cache/dnf/jenkins-0919f06c02b07800/packages/jenkins-2.249.3-1.1.noarch.rpm: Header V4 RSA/SHA512 Signature, key ID 45f2c3d5: NOKEY
Public key for jenkins-2.249.3-1.1.noarch.rpm is not installed
The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing ‘yum clean packages’.

Причина: не импортирован публичный ключ. По умолчанию, репозиторий требует проверку gpg.

Решение: проблема может быть решена 2-я способами.

1. Импортировать публичный ключ для репозитория jenkins. Для этого выполняем команду:

rpm —import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

2. Отключаем проверку gpg. Для этого откроем настройки для репозитория:

vi /etc/yum.repos.d/jenkins.repo

Редактируем строку:

gpgcheck=0

Error: Unable to access jarfile jenkins-cli.jar

Ошибка появляется при попытке выполнить команду в jenkins-cli.

Причина: для работы команды необходим файл jenkins-cli.jar, который не устанавливается в системе.

Решение: выполняем действия по для работы с jenkins-cli.

failed to start lsb: start jenkins at boot time

Ошибка возникаем при попытке запустить сервис jenkins.

Причина: как правило, отсутствие в системе установленного java.

Решение: устанавливаем java по .

Set Up Jenkins

To set up Jenkins, type your domain name or IP address along with port 8080 in the browser’s address bar, and you should have the Unlock Jenkins page asking for a password, like the shown picture below.

You can get the password from the given location using the cat command in the terminal. The command for getting the password would be like this:

$ sudo cat varlibjenkinssecretsinitialAdminPassword

This command will print the password straight out and you can copy and paste it into the password field on the Jenkins Unlock screen and click on the “Continue” button.

It will navigate you to the next screen where it will ask for either “install the suggested plugins” or “select the plugins of your choice”.

Select the “Install suggested plugins”. On the click, it will start installing the default plugins.

Provide the required input fields and hit the “Save and Continue” button.

Next, it will navigate you to a page for configuring the Jenkins URL.

For now, go with the default auto-generated URL and click on the “Save and Finish” button in the bottom right corner.

On the completion of the Jenkins setup, you can have the screen with the success message “Jenkins is ready!”, as shown below.

Hit the “Start using Jenkins” button, and on the next page, you will have a clean look at the dashboard.

And this is how we come to the end of installing and setting up Jenkins on the Ubuntu 20.04 LTS system.

4: Настройка Jenkins

Чтобы выполнить начальную настройку Jenkins в браузере, откройте ссылку:

На экране появится страница Unlock Jenkins, на которой указан путь к файлу с паролем:

В терминале пароль можно запросить с помощью команды:

Скопируйте 32-значный буквенно-цифровой пароль и вставьте его в поле Administrator password, затем нажмите Continue. На следующем экране можно установить предварительно собранный набор плагинов или выбрать плагины самостоятельно.

Чтобы начать установку стандартного набора плагинов, нажмите Install suggested plugins.

После установки программа предложит создать учетную запись администратора. Этот шаг можно пропустить – тогда вы сможете использовать стандартную учётную запись admin. Однако лучше создать новую запись.

Примечание: По умолчанию сервер Jenkins не шифрует данные. Чтобы настроить шифрование, обратитесь к мануалу Настройка Jenkins для поддержки SSL с помощью обратного прокси-сервера Nginx в Ubuntu 20.04.

Вы увидите страницу Instance Configuration, которая попросит вас выбрать URL-адрес для вашего экземпляра Jenkins. Подтвердите либо домен, либо IP-адрес вашего сервера.

После подтверждения соответствующей информации нажмите Save and Finish. Вы увидите страницу «Jenkins is Ready!».

Нажмите Start using Jenkins, чтобы перейти на главную панель управления Jenkins.

Установка Jenkins успешно завершена.

3.3 Пример: настройка Jenkins для поддержки автоматической компиляции maven (svn)

// Каталог svn должен содержать эти два каталога и файл pom.xml,

// Если вручную, поместите пакет .war непосредственно под tomcat, а затем измените файл конфигурации, чтобы запустить его напрямую

F.1. Зависимый пакет не разрешен, и чтение из центрального хранилища Maven не удается

Решение:Изменить адрес внутреннего зеркала mavenИзмените файл конфигурации maven:Адрес установки исходного кода: /usr/local/maven/conf/settings.xmlyum должен быть: rpm -qi maven Просмотреть путь, по которому находится файл settings.xml Изменить зеркало

F.2, ошибка разрешения git (возвращен код состояния 128: stdout :)

Решение:Поскольку локальный .ssh / id_rsa.pub обновлен, вам необходимо добавить содержимое id_rsa.pub jenkins в /home/git/.ssh/authorized_keys на сервере git

Установка Jenkins в Unix/Linux

Как я говорил ранее, я буду использовать докер для установки дженкинса. ОС которую я использую — Mac OS X. Многие скажует, да какая разница, ты же запускаешь в докере. Но на самом деле — докер немного по разному работает на разных Unix/Linux ОС. Немного пришлось поплясать с бубном, чтобы зависти все это чудо на маке.

Мой docker-compose.yml файл выглядит следующим образом:

Кто работает с докер-компос, тот сможет прочитать данный файл и понять в чем дело

Но если кто-то не знает, я немного расскажу на что стоит заострить внимание. И так:

Я данным сервисом запускаю 3 контейнера, — gitlab, jenkins (master) и socat. Gitlab — система управления репозиториями кода для Git. данные конфиг делался универсальным и чтобы он работал в любом месте и на Unix/Linux системах. Если что-то не будет работать, то стоит рассмотреть поле DNS (в данном поле прописаны ДНС-ы которые служат резолвом в самих докер-контейнера. Иногда это уместно, когда на работе или дома используются свои ДНС, а остальные блокируются).

Можно заюзать статью чтобы проверить, какие ДНС-ы используются:

PS: Для данного поля стоит использовать, ТОЛЬКО 3 DNS ЗАПИСИ, не более! Иначе, они просто не будут работать и моугт сломать контейнер(ы).

Многие посмотрет на «socat» конейнер и спросят, а зачем он тут вообще упал? Так вот, он тут служит перенаправлением данных с порта (2375) на Unix сокет (/var/run/docker.sock). И сново могут полететь вопросы, а зачем?

Да дело в том, что докер-прогеры «не смогли» запилить «docker_opts»/»hosts» переменную в докер под Mac OS X. Данная переменная выполняет собственно аналогичные действия, но нативным спообом. Выглядит это вот так (на стороне Linux):

Т.е данную команду нужно прописать в конфиг докера, или можно запустить демон следующим образом:

На все это дело, я потратил около 7 часов времени и мне не очень было понятно почему не работает. Но в интернете нашелся пример моего бедствия. Я взял идею и опробовал ее — костыльненько, но а что поделать!

Самое интересно, то, что я в своей реализации заюзал «Docker in Docker», т.е пробросил Docker с Mac OS X на Docker хост с jenkins. Иначе , я хз как это должно работать. Если кто-то знает — расскажите

Собственно, gitlab + jenkins — готовы к использованию. Перейдем к настройке jenkins-slave.

Планирование проекта

Jenkins позволяет запускать проекты по требованию или в определенное время. Теперь пора настроить расписание сборки. Сначала нажмите на ссылку back to project, чтобы снова просмотреть проект.

Вернувшись к просмотру проекта, кликните кнопку Configure.

Она откроет страницу настройки. Теперь найдите раздел Build Triggers и выберите Build periodically.

Теперь это поле ввода принимает синтаксис crontab; следовательно, настройка @hourly будет запускать его каждый час, а * * * * *  будет запускать его каждую минуту. В данном руководстве будет использоваться настройка 0 */6 * * *, которая запускает проект каждые 6 часов. Когда проект будет сохранен, планировщик начнет работу в назначенное время.

С планировщиком Jenkins поставляются несколько дополнений. Чтобы получить о них больше информации, нажмите синюю кнопку с вопросительным знаком справа от поля ввода.

2.3, настроить jdk, необходимо использовать jdk

3. Конфигурация проекта Maven

// Отправляем исходный код в git, при отправке есть pom.xml

// После нажатия кнопки «Сохранить» нажмите кнопку «Создать сейчас»

// Нажмите build и проверьте информацию консоли, чтобы проверить статус. После этого вы должны сначала изменить адрес зеркала maven

// Полная информация

3.3 Пример: настройка Jenkins для поддержки автоматической компиляции maven (svn)

// Каталог svn должен содержать эти два каталога и файл pom.xml,

// Если вручную, поместите пакет .war непосредственно под tomcat, а затем измените файл конфигурации, чтобы запустить его напрямую

F.1. Зависимый пакет не разрешен, и чтение из центрального хранилища Maven не удается

Решение:Изменить адрес внутреннего зеркала mavenИзмените файл конфигурации maven:Адрес установки исходного кода: /usr/local/maven/conf/settings.xmlyum должен быть: rpm -qi maven Просмотреть путь, по которому находится файл settings.xml Изменить зеркало

F.2, ошибка разрешения git (возвращен код состояния 128: stdout :)

Решение:Поскольку локальный .ssh / id_rsa.pub обновлен, вам необходимо добавить содержимое id_rsa.pub jenkins в /home/git/.ssh/authorized_keys на сервере git

MX Linux 19.2 KDE – Features KDE Plasma 5.14 and Based On Debian 10.4

MX Linux 19.2 KDE – Features KDE Plasma 5.14 and Based On Debian 10.4

Jenkins — это сервер автоматизации с открытым исходным кодом, который предлагает простой способ настройки конвейера непрерывной интеграции и непрерывной доставки (CI / CD).

Непрерывная интеграция (CI) является DevOps практикой, в которой члены группы регулярно совершают свои изменения коды в репозиторий контроля версий, после чего автоматизированного сборки и испытания выполняются. Непрерывная доставка (CD) — это серия практик, в которых изменения кода автоматически собираются, тестируются и внедряются в производство.

В этом руководстве мы расскажем, как установить Jenkins на Debian 10, Buster из официального репозитория Jenkins.

Установка Дженкинс

Для установки Jenkins на Debian 10 выполните следующие действия как пользователь root или пользователь с привилегиями sudo:

  1. Jenkins написан на Java, поэтому первым шагом является установка Java. Для этого обновите индекс пакета и установите пакет OpenJDK 11 с помощью следующих команд:

    Версия Java LTS 8 недоступна в официальных репозиториях Debian Buster. Если вы хотите запустить Jenkins с Java 8, проверьте это руководство по установке.

    Используйте для загрузки и импорта ключей GPG хранилища Jenkins:

    Команда должна вернуть , что означает, что ключ был успешно импортирован, и пакеты из этого хранилища будут считаться доверенными.

    Выполните следующую команду, чтобы добавить хранилище Jenkins в вашу систему:

    Обновите список пакетов и установите последнюю версию Jenkins:

    Включите и запустите службу Jenkins, выполнив:

Настройка Дженкинс

Чтобы начать процесс установки, откройте браузер и введите свой домен или IP-адрес, а затем порт , .

Появится экран, подобный следующему:

На данный момент вы успешно установили Jenkins в своей системе.

Вывод

Из этого руководства вы узнали, как установить и выполнить начальную настройку Jenkins в системах Debian. Теперь вы можете посетить официальную страницу документации Jenkins и начать изучать рабочий процесс и модель подключаемого модуля Jenkins.

Дженкинс Дебиан

В этом уроке мы покажем вам, как установить Дженкинс на 18.04 машине Ubuntu, используя репозиторий пакетов Debian Дженкинс. Jenkins — это сервер автоматизации с открытым исходным кодом, который предлагает простой способ настройки конвейера непрерывной интеграции и непрерывной доставки (CI / CD).

Jenkins — это сервер автоматизации с открытым исходным кодом, который предлагает простой способ настройки конвейера непрерывной интеграции и непрерывной доставки (CI / CD). В этом руководстве мы рассмотрим установку Jenkins на компьютере Debian 9 с использованием репозитория пакетов Jenkins Debian.

VirtualBox — это кроссплатформенная программа виртуализации с открытым исходным кодом, которая позволяет одновременно запускать несколько гостевых операционных систем. В этом руководстве объясняется, как установить последнюю версию VirtualBox на Debian 10, Buster.

Установка и запуск Jenkins под Linux

s http-equiv=»Content-Type» content=»text/html;charset=UTF-8″>tyle=»clear:both;»>

3. Начать

проблема:

Job for jenkins.service failed because the control process exited with error code. See “systemctl status jenkins.service” and “journalctl -xe” for details.

решить:

Причина: введите systemctl status jenkins.service, чтобы просмотреть сообщение об ошибке. Конфигурация Java не найдена Открыть: vim /etc/init.d/jenkins настроить переменные среды Java

4. Важная конфигурация

  1. инструкция по установке
  1. Адрес файла конфигурации Jenkins:
  1. Вот еще три важных конфигурации: JENKINS_HOME JENKINS_USER JENKINS_PORT JENKINS_HOME — это домашний каталог Jenkins, здесь размещаются каталоги, в которых работает Jenkins, адрес файлов хранилища Jenkins, подключаемые модули Jenkins и сгенерированные файлы находятся в этом каталоге.

Интеллектуальная рекомендация

19.03.21 Я загрузил комплексные обучающие видеоуроки Photoshop CC 2015 и обучающие видеоуроки по новым функциям PS CC 2015. Я просмотрел несколько видео, но мне кажется, что они в основном объясняют н…

проверка данных весеннего mvc Два способа проверки данных Spring MVC: 1.JSR303 2.Hibernate Validator Второй метод является дополнением к первому методу Шаги для проверки данных с использованием Hibern…

Существует два способа вызова между сервисами Springcloud: RestTemplate и Feign. Здесь мы представляем сервисы вызова RestTemplate. 1. Что такое RestTemplate RestTemplate — это структура веб-запросов …

1. Понимать предварительный, средний, последующий порядок и иерархическую последовательность бинарных деревьев; Свяжите язык C со структурой данных двоичного дерева; Освойте с…

Вам также может понравиться

Последнее обучение, как использовать Kaldi, чтобы проснуться без использования WSTF, поэтому вам нужно глубоко пойти в Kaldi для обучения. Временное состояние обучения. Три изображения представляют со…

Во время простоя некоторые веб-страницы, которые мы создали, не были завершены, но не хотят, чтобы другие видели, вы можете создать простой эффект шифрования страницы на странице этой веб-страницы, ан…

Расширенные статьи серии Zookeeper 1. NIO, ZAB соглашение, 2PC представления концепции 2. Лидер выборов 3. Рукописный распределенный замок, центр настройки ==================================== 1. NIO,…

Посмотрите на конечный эффект первым DemoPreview.gif SETP1 эффект капли воды Первая реакция на эффект капли воды — нарисовать замкнутую кривую. С помощью события MotionEvent измените радиус во время п…

Подготовка системы

В качестве предварительной настройки обновим список пакетов, зададим корректное время сервера и настроим брандмауэр.

Для возможности установки свежих пакетов, выполняем команду:

apt-get update

Настройка времени

Для настройки времени зададим часовой пояс:

timedatectl set-timezone Europe/Moscow

* в данном примере московское время.

Установим службу для синхронизации времени:

apt-get install chrony

Разрешим ее автозапуск: 

systemctl enable chrony

Настройка брандмауэра

По умолчанию в Ubuntu настроены разрешающие правила и конфигурирование брандмауэра не требуется. Однако, если в нашей системе применяются правила, необходимо открыть порт 8080, на котором работает Jenkins:

iptables -A INPUT -p tcp —dport 8080 -j ACCEPT

И сохраняем правило:

apt-get install iptables-persistent

netfilter-persistent save

Настройка Gitlab-сервера в Unix/Linux

Под настройкой гитлаб-сервера, я подразумеваю некоторые моменты, — например создания вебхука для дженкинса + добавления открытого ключа для пользователя git. Открываем УРЛ и переходим в админ-панель (http://gitlab.local/admin):

Нажимаем на «New user» (Это сразу под «Users») чтобы создать пользователя git. В этом нет ничего сложного. После того как создали, клацаем на «USERS:» (как на картинке, у меня всего 3 пользователя). Находим «git» пользователя которого создали и нажемаем по нему (Можно не логинится в данного юзера, а просто нажать на «impersonate» чтобы «стать им»). Затем, открываем профиль самого пользователя и переходим в поле «SSH Keys». Собственно в поле вставляем публичный\открытый ключ для подключения к гитлаб-серверу.

PS: я генерировал в 2048 битный ключ (если использовать 4096-битный, будет ошибка):

Т.е вот так не сработает:

PS: Конечно странно что нельзя использовать 4096-битный ключ. Возможно кто-то знает причину и поделится знаниями в коментариях.

Я создавал еще «Personal Access Tokens» не помню уже зачем, и нужно ли это вообще. Но оставил чтобы не забыть в случае надобности… Все это были настройки для git-юзера в его юзер-спейсе. Можно закрыть и перейти в админ-спейс, а именно в меню «System Hooks».

В поле URL, я вставил:

Где:

  • http://jenkins_local_docker:8080 — Ссылка на дженкинс-сервер.
  • generic-webhook-trigger/invoke — Плагин который устанавливали недавно (в дженкинсе).
  • token=jenkins_token_to_gitlab — собственно сам токен, по которому будет происходить веб-хук. Выбрал простое название для токена (конечно не очень безопасное, но сойдет для локальной лабы).

В поле «Secret Token» собственно прописал токен, например у меня это:

В поле «Trigger» стоит отметить на что нужно реагировать. Я отметил все (не знаю зачем, но пусть будет), но можно было только «Repository update events», «Push events» и «Enable SSL verification», так же, если используете теги, то включаем «Tag push events», для мерджей стоит включить «Merge request events». Если нажать на «TEST», то можно проверить работоспособность вашего созданного веб-хука. У меня все огонь и я могу использовать его.

И да, нужно для юзера от которого будут идти коммиты в гитлаб-сервер, добавить открытый ключ. Собственно кто работает с гит-ом не один раз, помнит об этом…

В качестве примера сборки, я зашел на гитхаб и нашел «simple-java-maven-app» проект для моей сборки. Код содержит обычный «Hello world» и тесты для него + Pipelinefile + сборочный файл для maven-а (pom.xml). Код скачал на свою машину и выполнил пуш в свой гитлаб-сервер.

И так, теперь все готово к сборке!

Why Use Jenkins?

In order to understand Jenkins, you must have an understanding of Continuous Integration (CI) and Continuous Delivery (CD):

  • Continuous Integration – the practice of constantly merging development work with the main branch.
  • Continuous Delivery – is continual delivery of code to an environment once the code is ready to ship. This could be to staging or production. The product is delivered to a user base, which can be QAs or customers for review and inspection.

Developers regularly update the code in the shared repository (such as GitHub or TFS). In nightly builds, changes made in the source code throughout the day are built together at the end of the day, making it hard to find the errors. This is where Jenkins comes in

As soon as a developer commits any change to the shared repository, Jenkins will immediately trigger a build, and in case of an error, immediately notify (Continuous Integration CI).

With Jenkins, we can also set post-build tests (unit test, performance test, acceptance test) in an automated manner. Whenever there is a successful build, Jenkins will perform these tests and generate a report (Continuous Delivery CD).

Заключение

В этом обучающем модуле мы установили Jenkins с помощью пакетов, предоставленных проектом, запустили сервер, открыли брандмауэр и создали пользователя с правами администратора. Сейчас вы можете начать изучение Jenkins.

Если вы готовы продолжить использование Jenkins, после знакомства следуйте указаниям руководства «Настройка Jenkins через SSL с помощью обратного прокси-сервера Nginx в Ubuntu 20.04» для защиты ваших паролей, а также любой важной системной информации или информации о продукте, которая будет передаваться между вашим компьютером и сервером в текстовом формате. Чтобы узнать больше о том, для чего можно использовать Jenkins, ознакомьтесь с другими обучающими модулями на эту тему:

Чтобы узнать больше о том, для чего можно использовать Jenkins, ознакомьтесь с другими обучающими модулями на эту тему:

  • Создание приложений Android с помощью Jenkins
  • Настройка конвейеров с непрерывной интеграцией в Jenkins в Ubuntu 16.04

Заключение

В этом руководстве вы установили Jenkins с помощью пакетов, предоставленных проектом, запустили сервер, открыли брандмауэр и создали пользователя с правами администратора. Сейчас вы можете начать изучение Jenkins.

После более близкого знакомства, если вы будете готовы продолжить использование Jenkins, следуйте указаниям руководства Настройка Jenkins с SSL с помощью обратного прокси сервера Nginx на Ubuntu 18.04 для защиты ваших паролей, а также любой чувствительной системной информации или информации о продукте, которая будет передаваться между вашим компьютером и сервером в текстовом формате.

Заключение

В этом мануале вы научились устанавливать Jenkins с помощью официальных пакетов, запустили сервер, настроили брандмауэр и создали пользователя с правами администратора. Теперь вы можете начать изучать функции Jenkins.

Для защиты ваших паролей (а также любой другой конфиденциальной информации о системе или продукте, которая будет передаваться между вашим компьютером и сервером в виде обычного текста) настоятельно рекомендуем ознакомиться с этим мануалом.

  • Разработка приложений Android при помощи Jenkins
  • Настройка непрерывной интеграции в Jenkins в Ubuntu 16.04

JenkinsUbuntuUbuntu 20.04UFW

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Мой редактор ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: