Jenkins je open-source automatizační server, který pomáhá vývojářům automatizovat proces vývoje softwaru včetně sestavování, testování a nasazení. Jenkins vám umožňuje spravovat a monitorovat jakékoli změny kódu v GitHubu, Bitbucket nebo GitLab a vytvářet kód automaticky pomocí nástrojů jako Maven a Gradle. Pomocí Jenkins můžete efektivně distribuovat práci na více počítačů.
V této příručce vám ukážeme, jak nainstalovat Jenkins na Ubuntu 20.04.
Předpoklady
- Ubuntu 20.04 VPS (budeme používat náš plán SSD 2 VPS)
- Přístup k uživatelskému účtu root (nebo přístup k účtu správce s oprávněními root)
Krok 1:Přihlaste se k serveru a aktualizujte balíčky operačního systému serveru
Nejprve se přihlaste ke svému serveru Ubuntu 20.04 přes SSH jako uživatel root:
ssh root@IP_Address -p Port_number
„IP_Address“ a „Port_number“ budete muset nahradit příslušnou IP adresou vašeho serveru a číslem portu SSH. V případě potřeby navíc nahraďte „root“ uživatelským jménem účtu správce.
Před spuštěním se musíte ujistit, že všechny balíčky Ubuntu OS nainstalované na serveru jsou aktuální. Můžete to provést spuštěním následujících příkazů:
apt-get update -y apt-get upgrade -y
Krok 2:Instalace Java
Jenkins je aplikace založená na java. Takže Java musí být nainstalována ve vašem systému, pokud není nainstalována, můžete ji nainstalovat pomocí následujícího příkazu:
apt-get install default-jdk -y
Tím se do vašeho systému nainstaluje Java verze 11. Verzi Java můžete ověřit pomocí následujícího příkazu:
java -version
Měli byste získat následující výstup:
openjdk version "11.0.9.1" 2020-11-04 OpenJDK Runtime Environment (build 11.0.9.1+1-Ubuntu-0ubuntu1.20.04) OpenJDK 64-Bit Server VM (build 11.0.9.1+1-Ubuntu-0ubuntu1.20.04, mixed mode, sharing)
Krok 3:Instalace Jenkins
Ve výchozím nastavení není Jenkins dostupný ve standardním úložišti Ubuntu, takže budete muset přidat úložiště jenkins do vašeho systému.
Nejprve nainstalujte potřebné závislosti pomocí následujícího příkazu:
apt-get install apt-transport-https gnupg2 -y
Dále stáhněte a přidejte klíč GPG pomocí následujícího příkazu:
wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | apt-key add -
Dále přidejte úložiště Jenkins pomocí následujícího příkazu:
sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
Jakmile je úložiště přidáno, aktualizujte mezipaměť úložiště a nainstalujte Jenkins pomocí následujícího příkazu:
apt-get update -y apt-get install jenkins -y
Po instalaci Jenkins ověřte stav Jenkins pomocí příkazu níže:
systemctl status jenkins
Měli byste získat následující výstup:
● jenkins.service - LSB: Start Jenkins at boot time Loaded: loaded (/etc/init.d/jenkins; generated) Active: active (exited) since Mon 2020-12-21 05:34:22 UTC; 6s ago Docs: man:systemd-sysv-generator(8) Tasks: 0 (limit: 2353) Memory: 0B CGroup: /system.slice/jenkins.service Dec 21 05:34:20 ubuntu2004 systemd[1]: Starting LSB: Start Jenkins at boot time... Dec 21 05:34:21 ubuntu2004 jenkins[15472]: Correct java version found Dec 21 05:34:21 ubuntu2004 jenkins[15472]: * Starting Jenkins Automation Server jenkins Dec 21 05:34:21 ubuntu2004 su[15526]: (to jenkins) root on none Dec 21 05:34:21 ubuntu2004 su[15526]: pam_unix(su-l:session): session opened for user jenkins by (uid=0) Dec 21 05:34:21 ubuntu2004 su[15526]: pam_unix(su-l:session): session closed for user jenkins Dec 21 05:34:22 ubuntu2004 jenkins[15472]: ...done. Dec 21 05:34:22 ubuntu2004 systemd[1]: Started LSB: Start Jenkins at boot time.
Jenkins nyní běží a naslouchá na portu 8080. Můžete to ověřit pomocí následujícího příkazu:
ss -antpl | grep 8080
Měli byste získat následující výstup:
LISTEN 0 50 *:8080 *:* users:(("java",pid=15539,fd=141))
Krok 4:Konfigurace Nginx jako reverzního proxy pro Jenkins
Je to dobrý nápad použít Nginx jako reverzní proxy pro přístup k Jenkins. Chcete-li tak učinit, nainstalujte Nginx pomocí následujícího příkazu:
apt-get install nginx -y
Jakmile je nginx nainstalován, vytvořte konfigurační soubor Nginx pomocí následujícího příkazu:
nano /etc/nginx/conf.d/jenkins.conf
Přidejte následující řádky:
upstream jenkins { keepalive 32; server 127.0.0.1:8080; } # Required for Jenkins websocket agents map $http_upgrade $connection_upgrade { default upgrade; '' close; } server { listen 80; server_name jenkins.domain.com; # this is the jenkins web root directory # (mentioned in the /etc/default/jenkins file) root /var/run/jenkins/war/; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; # pass through headers from Jenkins that Nginx considers invalid ignore_invalid_headers off; location ~ "^/static/[0-9a-fA-F]{8}\/(.*)$" { rewrite "^/static/[0-9a-fA-F]{8}\/(.*)" /$1 last; } location /userContent { root /var/lib/jenkins/; if (!-f $request_filename){ #this file does not exist, might be a directory or a /**view** url rewrite (.*) /$1 last; break; } sendfile on; } location / { sendfile off; proxy_pass http://jenkins; proxy_redirect default; proxy_http_version 1.1; # Required for Jenkins websocket agents proxy_set_header Connection $connection_upgrade; proxy_set_header Upgrade $http_upgrade; 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; proxy_max_temp_file_size 0; #this is the maximum upload size client_max_body_size 10m; client_body_buffer_size 128k; proxy_connect_timeout 90; proxy_send_timeout 90; proxy_read_timeout 90; proxy_buffering off; proxy_request_buffering off; # Required for HTTP CLI commands proxy_set_header Connection ""; # Clear for keepalive } }
Uložte a zavřete soubor a poté ověřte konfiguraci Nginx pomocí následujícího příkazu:
nginx -t
Měli byste získat následující výstup:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Nakonec restartujte službu Nginx pomocí následujícího příkazu:
systemctl restart nginx
Krok 5:Přístup k Jenkinsovi
Nyní otevřete webový prohlížeč a přejděte na webové rozhraní Jenkins pomocí adresy URL http://jenkins.domain.com
. Měli byste vidět následující stránku:
Nyní otevřete svůj terminál a vytiskněte heslo Jenkins pomocí následujícího příkazu:
cat /var/lib/jenkins/secrets/initialAdminPassword
Heslo správce Jenkins byste měli získat v následujícím výstupu:
00c7fa4f27c142a3ab8e6867eddb1bdd
Dále se vraťte do svého webového rozhraní a vložte výše uvedené heslo a klikněte na Pokračovat knoflík. Měli byste vidět následující obrazovku:
Klikněte na instalaci navrhovaných pluginů knoflík. Po instalaci všech pluginů byste měli získat následující stránku:
Zadejte požadované uživatelské jméno, heslo, e-mail a klikněte na Uložit a pokračovat knoflík. Měli byste vidět následující stránku:
Zadejte adresu URL svého webu Jenkins a klikněte na Uložit a dokončit knoflík. Měli byste vidět následující stránku:
Klikněte na Začít používat Jenkins . Na následující stránce byste měli vidět výchozí panel Jenkins:
Samozřejmě nemusíte nic z toho dělat, pokud používáte jednu z našich služeb Managed Jenkins VPS Hosting, v takovém případě můžete jednoduše požádat naše zkušené administrátory Linuxu, aby to za vás nastavili. Jsou k dispozici 24×7 a okamžitě se postarají o váš požadavek.
PS. Pokud se vám tento příspěvek líbil, sdílejte jej se svými přáteli na sociálních sítích pomocí tlačítek vlevo nebo jednoduše zanechte odpověď níže. Děkuji.