GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Installa ed esegui Jenkins con Systemd e Docker

Quando scarichi e configuri Jenkins utilizzando la finestra mobile, devi utilizzare il comando manuale per gestire il processo. Diventa piuttosto pericoloso e complicato. Quindi, lo gestiremo usando systemd. In realtà, è il gestore di sistema e servizio per i sistemi operativi Linux. È dotato di avvio, abilitazione, riavvio e arresto su richiesta di demoni, registrazione, ecc.

In questo articolo, scaricherò il pacchetto Jenkins dal repository hub docker e lo gestirò utilizzando systemd manager. Ho usato Ubuntu Linux, ma puoi farlo in centos, Debian, Redhat ecc. che supportano systemd.

Prerequisiti

  1. Ultima versione della finestra mobile installata
  2. Connessione Internet per scaricare l'immagine Jenkins

Configurazione

Per eseguire un processo abbiamo bisogno di utenti. Quindi, creiamo un gruppo di sistema, aggiungiamo un utente di sistema al gruppo. Poiché non è necessario accedere, non forniamo alcuna shell di accesso. Ho qui dato il nome "devops", puoi dare a tua scelta.

$ sudo groupadd --system devops
$ sudo useradd -s /sbin/nologin --system -g devops devops

Durante l'installazione della finestra mobile, per impostazione predefinita è stata aggiunta una finestra mobile utente. Quindi, per eseguire il nostro processo all'interno della finestra mobile, aggiungiamo l'utente "devops" e il tuo attuale utente di accesso al gruppo della finestra mobile.

$ sudo usermod -aG docker devops
$ sudo usermod -aG docker $USER

Abbiamo bisogno di una directory per mappare il volume del contenitore sull'host. Quindi, creiamo una directory e diamo la proprietà dell'utente corrente nella directory.

$ sudo mkdir -p /data/jenkins
$ chown -R $USER:$USER /data/jenkins

Ora puoi verificare l'utente "devops" usando il comando seguente. L'output deve essere simile al seguente.

$ id devops

Ora è il momento di creare un servizio. I file di servizio sono archiviati all'interno di /etc/systemd/system/ Quindi, crea un file che termina con .service come mostrato di seguito.

$ vim /etc/systemd/system/docker-jenkins.service

Aggiungi il seguente contenuto nel file. La configurazione seguente creerà un nome di servizio docker-jenkins. Estrarrà semplicemente l'ultima versione dell'immagine jenkins dall'hub Docker ed eseguirà il contenitore. Mapperà anche le porte 8080 e 50000 nel server host, necessarie per accedere al servizio jenkins. Come definito nella sezione Unità di seguito, richiede docker.service per essere eseguito correttamente. Se hai utenti diversi, i punti di montaggio cambiano di conseguenza.

[Unit]

Description=My Jenkins Server

Documentation=https://jenkins.io/doc/

After=docker.service

Requires=docker.service

[Service]

Type=simple

User=devops

Group=devops

TimeoutStartSec=0

Restart=on-failure

RestartSec=30s

ExecStartPre=-/usr/bin/docker kill jenkins-server

ExecStartPre=-/usr/bin/docker rm jenkins-server

ExecStartPre=/usr/bin/docker pull jenkins/jenkins

ExecStart=/usr/bin/docker run \

--name jenkins-server \

--publish 8080:8080 \

--publish 50000:50000 \

--volume /data/jenkins:/var/jenkins_home \

jenkins/jenkins

SyslogIdentifier=jenkin

ExecStop=/usr/bin/docker stop jenkins-server

[Install]

WantedBy=multi-user.target

Ricarica il file di servizio nel demone systemd, usando il comando seguente.

$ sudo systemctl daemon-reload

Avvia il servizio Docker utilizzando il comando seguente.

$ sudo systemctl start docker-jenkins

Systemd fornisce anche il servizio di registrazione predefinito in syslog. Puoi vedere il registro nella seguente posizione.

$ sudo tail -f /var/log/syslog

Ora puoi avviare il servizio dopo il riavvio del server utilizzando la funzione di "abilitazione" di systemd manager.

$ sudo systemctl enable docker-jenkins

Inoltre, verifica riavviando il servizio.

$ sudo systemctl restart docker-jenkins

Configurazione di Jenkins

Per configurare jenkins, visita prima http://yourserverip:8080 Quindi devi inserire la password amministratore iniziale, che è impostata nel seguente percorso. Copia l'output e incollalo in "Password amministratore". Quindi fare clic su continua.

$ cat /data/jenkins/secrets/initialAdminPassword

Puoi installare il plug-in richiesto e continuare.

Conclusione

In questo articolo, hai appreso come installare l'ultima versione di Jenkins utilizzando la finestra mobile e configurare il servizio per utilizzarla. La gestione di Jenkins con systemd semplifica il lavoro. Grazie per aver letto.


Ubuntu
  1. Come installare e ospitare il server OpenVPN con Docker

  2. Come installare Jenkins con Docker

  3. Installa ed esegui Vagrant su Ubuntu 20.04

  4. Come installare Docker ed eseguire Docker Container in Ubuntu

  5. Configurazione del servizio Systemd per l'esecuzione con accesso root

Come installare Sentry con Docker su Ubuntu 20.04

Come installare Mailtrain su Ubuntu 18.04 con Docker

Installa Portainer con Docker su Ubuntu

Come installare e configurare Jenkins su Ubuntu

Come eseguire Jenkins in Docker usando Docker Compose con volumi

Installa e usa Docker Compose con Docker su Ubuntu 22.04