Jenkins è un popolare strumento di open source CI (integrazione continua) ampiamente utilizzato per lo sviluppo di progetti, la distribuzione e l'automazione.
Questo articolo ti guiderà attraverso il processo di installazione di Jenkins su un'istanza del server Vultr CentOS 7. Per facilitare l'accesso dei visitatori, Nginx verrà installato anche come proxy inverso per Jenkins.
Prerequisiti
Prima di procedere, devi avere:
- Distribuito da zero un'istanza del server Vultr CentOS 7.
- Accesso al computer come utente non root con privilegi sudo.
Passaggio 1: aggiorna il tuo sistema CentOS 7
Una delle migliori pratiche dell'amministratore di sistema Linux è mantenere un sistema aggiornato. Installa i pacchetti stabile più recenti, quindi riavvia.
sudo yum install epel-release
sudo yum update
sudo reboot
Al termine del riavvio, accedere con lo stesso utente sudo.
Passaggio 2: installare Java
Prima di poter installare Jenkins, è necessario configurare una macchina virtuale Java sul proprio sistema. Qui, installiamo l'ultimo OpenJDK Runtime Environment 1.8.0 usando YUM:
sudo yum install java-1.8.0-openjdk.x86_64
Dopo l'installazione, è possibile confermare eseguendo il comando seguente:
java -version
Questo comando ti dirà dell'ambiente di runtime Java che hai installato:
openjdk version "1.8.0_91"
OpenJDK Runtime Environment (build 1.8.0_91-b14)
OpenJDK 64-Bit Server VM (build 25.91-b14, mixed mode)
Per aiutare le applicazioni basate su Java a individuare correttamente la macchina virtuale Java, è necessario impostare due variabili di ambiente: "JAVA_HOME" e "JRE_HOME".
sudo cp /etc/profile /etc/profile_backup
echo 'export JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk' | sudo tee -a /etc/profile
echo 'export JRE_HOME=/usr/lib/jvm/jre' | sudo tee -a /etc/profile
source /etc/profile
Infine, puoi stamparli per la revisione:
echo $JAVA_HOME
echo $JRE_HOME
Passaggio 3: installare Jenkins
Usa il repository YUM ufficiale per installare l'ultima versione stabile di Jenkins, che è 1.651.2al momento in cui scrivo:
cd ~
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 install jenkins
Avviare il servizio Jenkins e impostarlo per l'esecuzione all'avvio:
sudo systemctl start jenkins.service
sudo systemctl enable jenkins.service
Per consentire ai visitatori l'accesso a Jenkins, è necessario consentire il traffico in entrata sulla porta 8080:
sudo firewall-cmd --zone=public --permanent --add-port=8080/tcp
sudo firewall-cmd --reload
Ora, prova Jenkins visitando il seguente indirizzo dal tuo browser web:
http://<your-Vultr-server-IP>:8080
Passaggio 4: installare Nginx (opzionale)
Per facilitare l'accesso dei visitatori a Jenkins, è possibile configurare un proxy inverso Nginx per Jenkins, quindi i visitatori non dovranno più digitare il numero di porta 8080 quando accedono all'applicazione Jenkins.
Installa Nginx usando YUM:
sudo yum install nginx
Modifica la configurazione di Nginx:
sudo vi /etc/nginx/nginx.conf
Trova le due righe qui sotto:
location / {
}
Inserisci le sei righe seguenti nel segmento {}:
proxy_pass http://127.0.0.1:8080;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
Il risultato finale dovrebbe essere:
location / {
proxy_pass http://127.0.0.1:8080;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
Salva ed esci:
:wq
Avviare e abilitare il servizio Nginx:
sudo systemctl start nginx.service
sudo systemctl enable nginx.service
Consenti traffico sulla porta 80:
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload
Infine, visitare il seguente indirizzo dal browser Web per confermare l'installazione:
http://<your-Vultr-server-IP>