GNU/Linux >> Znalost Linux >  >> Linux

Jak nainstalovat Jenkins CI/CD v Ubuntu Linux

Trávíte spoustu času nasazováním kódu ve vaší infrastruktuře s mnoha kroky a softwarem? Nebojte se, jste na správném místě, kde se dozvíte, jak nainstalovat Jenkins, nejrozšířenější open-source nástroj.

Nejste čtenář? Podívejte se na tento související video tutoriál! Nevidíte video? Ujistěte se, že máte vypnutý blokovač reklam.

V tomto tutoriálu se naučíte, jak nainstalovat Jenkins na počítač Ubuntu, abyste mohli vytvořit a nasadit kód kliknutím na tlačítko.

Čtěte dál a začněte instalovat!

Předpoklady

Tento příspěvek bude návodem krok za krokem. Chcete-li pokračovat, ujistěte se, že máte počítač s Ubuntu. Tento tutoriál používá Ubuntu 18.04 s nainstalovaným apache.

Instalace Java verze 11 na počítači Ubuntu

Jenkins je nástroj Continuous Integration (CI) a Continuous Deployment (CD), který můžete spustit v různých kontejnerech servletů, jako je Apache Tomcat nebo Glassfish. Ale pro toto demo spustíte Jenkins na jeho vestavěném kontejnerovém serveru Java servlet.

Existuje několik implementací Java, které můžete použít pro práci s Jenkinsem, ale OpenJDK je nejoblíbenější, kterou si nainstalujete a použijete v tomto tutoriálu.

1. Přihlaste se ke svému počítači Ubuntu pomocí svého oblíbeného klienta SSH.

2. Dále spusťte následující příkazy a vytvořte adresář s názvem ~/install_jenkins_demo a přepněte se do tohoto adresáře.

mkdir ~/install_jenkins_demo
cd ~/install_jenkins_demo

3. Spusťte apt install příkaz níže k instalaci Javy na váš počítač.

# Installing Java Version: Java SE 11 (LTS)
sudo apt install default-jdk 

4. Nakonec spusťte níže uvedený příkaz a zkontrolujte verzi nainstalované Java na vašem počítači. Tím zajistíte, že jste úspěšně nainstalovali Javu.

# Checking the Version of Java to verify Java installation.
java -version

Instalace Jenkinse na instanci Ubuntu 18.04 LTS

Nyní, když máte na počítači Ubuntu nainstalovanou Javu, je čas nainstalovat Jenkins na váš počítač. Instalace Jenkinse je velmi podobná tomu, jak instalujete jiné balíčky na váš počítač.

Za předpokladu, že jste stále přihlášeni ke klientovi SSH:

1. Nejprve spusťte apt update příkaz k aktualizaci systémových balíčků.

sudo apt update

2. Dále spusťte wget příkaz níže pro přidání veřejného klíče Jenkins do vašeho systému.

Přidání veřejného klíče umožňuje webu Jenkins stáhnout oficiální úložiště Jenkins nebo jakékoli požadované balíčky.

wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -

3. Spusťte následující příkazy pro přidání oficiálního úložiště Jenkins do vašeho systému a aktualizaci systému.

# Adding the Jenkins official repository to the system
sudo sh -c 'echo deb https://pkg.jenkins.io/debian-stable binary/ > \
    /etc/apt/sources.list.d/jenkins.list'
# Updating the package
sudo apt-get update

4. Nyní spusťte níže uvedený příkaz na install Jenkins balík.

# Installing the Jenkins Package
sudo apt-get install Jenkins

5. Nakonec spusťte service příkaz níže k ověření stavu služby Jenkins. # Validating the Jenkins service on ubuntu machine service jenkins status

# Validating the Jenkins service on ubuntu machine
service jenkins status

Jak můžete vidět níže, stav ukazuje, že služba Jenkins je aktivní .

Konfigurace Jenkinsovy instance

Nyní jste v polovině úspěšné instalace Jenkins. Než jej však začnete skutečně používat, musíte jej nastavit základním vybavením. Jak? Prvním krokem při nastavení Jenkinse je odemknutí nově nainstalovaného Jenkinse.

Za předpokladu, že jste stále přihlášeni ke klientovi SSH:

1. Otevřete svůj oblíbený prohlížeč a přejděte na IP adresu serveru následovanou portem 8080 jako jenkins-ip:8080. Po přechodu na odkaz budete muset Jenkinse odemknout zadáním hesla správce. Administrátorské heslo je uloženo v /var/lib/jenkins/secrets/initialAdminPassword adresář na serveru (krok dva).

2. Spusťte cat příkazem níže přidejte do počítače heslo správce z /var/lib/jenkins/secrets/initialAdminPassword adresář.

cat /var/lib/jenkins/secrets/initialAdminPassword

Jak můžete vidět níže, obrovský řetězec ve výstupu je heslo správce. Poznamenejte si heslo správce, protože ho budete potřebovat k odemknutí Jenkinse (krok tři).

3. Přepněte zpět do webového prohlížeče (Odemkněte Jenkinse stránku) a zadejte heslo správce, které jste si poznamenali v kroku 2.

Jakmile odemknete Jenkins, váš prohlížeč přesměruje na stránku, kde si upravíte svou instanci Jenkins pomocí pluginů (krok čtyři).

4. Na stránce Přizpůsobit Jenkins klikněte na Instalovat navrhované pluginy volba.

Jenkins Plugin je nástroj třetí strany, který se integruje s Jenkins a umožňuje vám provádět úkoly, jako je plugin Git. Zásuvný modul Git vám umožňuje připojit se k repozitáři Git, spouštět příkazy Git a tak dále.

5. Vyplňte údaje o uživateli správce, jak je znázorněno níže, a klikněte na tlačítko Uložit a pokračovat pro vytvoření uživatele Admin. Tento uživatel správce vám umožňuje pracovat s ovládacím panelem uživatelského rozhraní Jenkins nebo instancí Jenkins.

Jakmile stisknete tlačítko Uložit a pokračovat, zobrazí se obrazovka Konfigurace instance zobrazená v kroku 5.

Ve výchozím nastavení má Jenkins vytvořeného uživatele Admin s uživatelským jménem/heslem (admin: admin ), ale stále vám poskytuje možnost vytvořit uživatele Admin dle vašeho výběru. Pokud nechcete vytvořit vlastního administrátora, můžete tento krok přeskočit a pokračovat jako správce.

6. Nakonec klikněte na Uložit a dokončit pro uložení konfigurace instance.

Konfigurace instance vám umožňuje zadat adresu URL Jenkins, kterou chcete použít, a v tomto případě použijete výchozí adresu URL (tj. server-ip:8080)

Změna výchozího portu Jenkinsovy instance

Dříve jste se dozvěděli, že ve výchozím nastavení Jenkins běží na portu 8080, což je v pořádku. Ale co když potřebujete spouštět nějaké další aplikace na stejném portu, jako je Apache nebo NGINX? Bez obav! Můžete změnit výchozí port Jenkins (8080) a spustit instanci Jenkins na jiných portech.

1. Otevřete /etc/default/Jenkins soubor ve vašem preferovaném textovém editoru a změňte výchozí port z 8080 na 9090 a uložte změny.

2. Dále spusťte níže uvedený příkaz a restartujte Jenkins, aby se projevily aktualizované konfigurace.

sudo systemctl restart jenkins

3. Nakonec přejděte na adresu URL Jenkins, ale tentokrát změňte port na 9090, jak je uvedeno níže.

Bezpečné spouštění Jenkins (HTTPS) pomocí certifikátu SSL

Nyní vaše instance Jenkins běží perfektně na portu 9090. Ale je to bezpečné? Ne, to není. Zabezpečte svou instanci Jenkins a vyhněte se její kompromitaci útočníky tím, že budete mít povolený certifikát SSL.

SSL certifikáty se používají hlavně k testování na místním počítači, když není k dispozici žádný certifikát od externí certifikační autority.

Zabezpečení instance Jenkins:

1. Spusťte každý níže uvedený příkaz a vytvořte adresář s názvem ~/certificates k uložení certifikátů a přechodu do tohoto adresáře.

mkdir ~/certificates
cd ~/certificates

2. Dále spusťte následující openssl pro vygenerování žádosti o podpis certifikátu (CSR) a soukromého klíče.

openssl req -x509 -newkey rsa:4096 -keyout apache.key -out apache.crt -days 365 -nodes

3. Spusťte následující příkazy a vytvořte další adresář (/etc/apache2/ssl ) a přesuňte certifikáty z ~/certificates/ do adresáře /etc/apache2/ssl adresář.

mkdir /etc/apache2/ssl
mv ~/certificates/* /etc/apache2/ssl/.

4. Otevřete výchozí konfigurační soubor serveru SSL Apache (/etc/apache2/sites-available/default-ssl.conf ) a přidejte níže uvedené řádky. Nezapomeňte nahradit se skutečným názvem vašeho serveru.

V níže uvedeném kódu zadáte umístění (klíč a soubor certifikátu), kam jste dříve zkopírovali certifikáty SSL. Také, aby Jenkins přesměroval na port 9090 , přidáte ProxyPass a zapněte ProxyPreserveHost .

ServerName 
SSLCertificateFile    /etc/apache2/ssl/apache.crt
SSLCertificateKeyFile /etc/apache2/ssl/apache.key
ProxyPreserveHost On
ProxyPass / http://127.0.0.1:9090/
ProxyPassReverse / http://127.0.0.1:9090/

5. Nyní spusťte každý níže uvedený příkaz pro aktivaci modulu SSL, povolení webu, který jste upravili (krok 4), a restartování služby Apache.

# Enable the SSL module, so you can work with SSL connections.
sudo a2enmod ssl proxy proxy_http proxy_balancer
# Enable the site you modified (step four)
sudo a2ensite default-ssl.conf
# Restart the Apache service
sudo service apache2 restart

6. Nakonec přejděte do své instance Jenkins, ale tentokrát pomocí HTTPS, jak je uvedeno níže.

Jak můžete vidět, Jenkins se úspěšně otevírá pomocí připojení SSL na portu HTTPS. Nedělejte si starosti, pokud uvidíte varovný symbol zobrazující Nezabezpečeno zpráva. Toto varování se vám zobrazí, protože používáte certifikát s vlastním podpisem (vytvořený vámi) a nikoli certifikační autoritou.

Závěr

V tomto tutoriálu jste se naučili, jak nainstalovat Jenkins na počítač Ubuntu a ověřit, že máte bezpečný přístup k instanci Jenkins.

Jak teď plánujete zlepšit hru s Jenkinsem? Možná automatizovat nasazení webu? Nebo vytvořit kanál Jenkins CI CD pro zlepšení procesu vývoje softwaru?


Linux
  1. Jak nainstalovat Javu na Linux

  2. Jak nainstalovat Javu na Ubuntu Linux

  3. Jak nainstalovat Jenkins na Linux

  1. Jak nainstalovat Javu na Ubuntu

  2. Jak nainstalovat Javu na Ubuntu 18.10 Cosmic Cuttlefish Linux

  3. Jak nainstalovat Javu na Ubuntu 22.04

  1. Jak nainstalovat Javu na Ubuntu 19.10 Eoan Ermine Linux

  2. Jak nainstalovat Javu na Ubuntu 18.04

  3. Jak nainstalovat Javu na Ubuntu 18.04