GNU/Linux >> Znalost Linux >  >> Linux

Jak nainstalovat Jenkins Automation Server na AlmaLinux 8

Jenkins je bezplatný a open-source automatizační server napsaný v Javě. Může být nasazen na jednom serveru nebo jako distribuovaná aplikace. Je to jedno z nejpopulárnějších open-source řešení pro nepřetržitou integraci a nepřetržité dodávání softwarových aplikací.

Nepřetržitá integrace (CI) je postup vývoje softwaru, který vyžaduje, aby vývojáři integrovali svůj kód do hlavního úložiště (obvykle na denní bázi) co nejdříve a často, aby bylo možné odhalit chyby integrace, vytvořit nové funkce a poskytnout zpětnou vazbu pro všechny. fáze životního cyklu softwaru.

Platforma, jako je Jenkins, je rámec CI, který lze použít online nebo nainstalovat lokálně na váš počítač. Poskytuje vám snadno použitelné rozhraní pro spolupráci se členy vašeho týmu na GitHubu, Bitbucketu nebo jiných úložištích, která používají Git, za účelem vytváření kontinuálních integračních kanálů.

Continuous delivery (CD) je postup vývoje softwaru, který umožňuje malé, časté vydávání softwarových aplikací a služeb. Je rychlejší než tradiční přístup, který obvykle zahrnuje jediné velké vydání každých šest měsíců. Nepřetržité doručování může zahrnovat nasazení nového kódu každý den, každou hodinu nebo dokonce několikrát za hodinu. Kratší časové intervaly umožňují flexibilitu v reakci na změny v obchodních požadavcích nebo základní technologii a zároveň snižují náklady a rizika spojená s dlouhými časovými obdobími mezi vydáními.

Platforma jako Jenkins je rámec CD, který koordinuje a spravuje různé kroky potřebné k vytvoření systému CD. Úlohou Jenkinse není jen vytvářet kód, ale také jej testovat a nasazovat.

Architektura založená na zásuvných modulech, která umožňuje rozšířit základní funkcionalitu Jenkins o samostatně napsané zásuvné moduly, např. pro správu zdrojového kódu nebo jiné úkoly. Dostupné pluginy jsou uvedeny ve Správci pluginů v Jenkins a lze je nainstalovat pouhým kliknutím na ně.

Jenkins poskytuje více než 300 zásuvných modulů pro podporu vytváření, nasazení a automatizace jakéhokoli typu projektu od nuly až po produkci, včetně Javy, Javascriptu, PHP, Ruby, Androidu a dalších.

Má také své vlastní REST API, takže si můžete vytvořit své vlastní nástroje, které se integrují s Jenkins, aniž byste museli vědět, jak kódovat nebo cokoli o vnitřních částech architektury Jenkins.

Jste správce systému a hledáte řešení, které vám pomůže ušetřit čas při nasazování malých aplikací na vaše počítače. Po zhlédnutí některých možností narazíte na Jenkins, který tvrdí, že dokáže vyřešit všechny vaše problémy. Ponoříte se do toho, přečtete si dokumentaci a nainstalujete Jenkins. Dokumentace vás provede procesem instalace, ale nemůžete ji zcela správně nainstalovat.

Instalace a konfigurace nezbytných softwarových komponent pro kompletní fungující sestavovací systém není tak snadná, jak se může zdát. Proto jsme vytvořili tento podrobný návod, jak nainstalovat a nakonfigurovat Jenkins na AlmaLinux 8.

Předpoklady

Abyste mohli nainstalovat Jenkins na AlmaLinux 8, budete potřebovat:

  • 64bitový počítač AlmaLinux 8 s funkčním připojením k internetu.
  • Přístup uživatele root k vašemu serveru. Můžete to získat podle tohoto průvodce.
  • Systémové požadavky:podle oficiálních stránek Jenkins vyžaduje základní instalace Jenkins minimálně 2 GB RAM. Jenkin vyžaduje pro instalaci 50 GB volného místa na disku plus 1 GB volného místa na disku pro každou podřízenou jednotku sestavení, kterou chcete přidat. Kromě toho budete potřebovat jedno jádro CPU a jeden GB paměti RAM na jednoho souběžného sestavení, jehož podporu očekáváte.

Aktualizace systému

Než začnete s instalací a konfigurací Jenkins, měli byste aktualizovat svůj systém na nejnovější dostupnou verzi softwarových balíčků.

Za tímto účelem ssh na váš server a spusťte následující příkaz. Balíček epel-release poskytuje aktualizované balíčky z vývojového úložiště Extras, které ještě nejsou součástí hlavní verze RHEL. Extras repo obsahuje balíčky, které nejsou zahrnuty ve standardní sadě balíčků Red Hat, ale přesto jsou vytvořeny pro vydání RHEL. To zahrnuje jazykové balíčky, podporu novějších verzí adaptivních ikon a další aktualizace funkcí.

  • kontrolní aktualizace sudo dnf &&aktualizace sudo dnf -y
  • instalace sudo dnf epel-release

Instalace Java

Java je programovací jazyk, který je založen na C. Je považován za jeden z nejpopulárnějších programovacích jazyků, protože byl použit v mnoha softwarech, jako je Android a Google Chrome. Java je multiplatformní programovací jazyk, který dokáže spouštět autonomní aplikace na operačních systémech Windows i Linux, stejně jako na MacOS, Solaris, FreeBSD a dalších systémech UNIX.

Jenkins je ve svém jádru Java program, který ke správnému fungování vyžaduje instalaci Java Runtime Environment (JRE) a Java Development Kit (JDK).

Tato ukázka nainstaluje OpenJDK 11 do systému. OpenJDK je bezplatná a open-source implementace platformy Java, Standard Edition (Java SE). Jedná se o vývojové a runtime prostředí pro vytváření aplikací, mikroslužeb a dalších serverových systémů, které běží na virtuálním stroji Java (JVM).

OpenJDK je založen na Oracle Java Development Kit verze 8 s podporou Project Jigsaw. To znamená, že můžete spustit Jenkins v OpenJDK 11 s Project Jigsaw bez jakýchkoli problémů s kompatibilitou.

Spusťte následující příkaz pro instalaci OpenJDK 11 na váš systém.

sudo dnf install java-11-openjdk -y

Po dokončení instalace můžete spustit příkaz a zkontrolovat, zda funguje správně.

java -version

Uvidíte následující výstup.

Instalace Jenkinse

Nyní, když máte nainstalovanou Javu, jste připraveni nainstalovat Jenkins.

Základní úložiště AlmaLinux neobsahuje žádný z balíčků Jenkins, takže nejprve budete muset přidat oficiální úložiště od jeho vývojáře. Je to jediné úložiště, které může distribuovat software zabalený pro konkrétní podporovanou distribuci. V tomto případě se jedná o vlastní úložiště vývojáře Jenkins pro Redhat a jeho deriváty.

Spusťte následující příkaz pro import klíče Jenkins do systému. Tento klíč je bezpečnostní mechanismus používaný k ověření pravosti softwarového balíčku.

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

Spusťte následující příkaz a přidejte úložiště Jenkins do systému.

cd /etc/yum.repos.d/ && curl -O https://pkg.jenkins.io/redhat-stable/jenkins.repo

Spuštěním příkazu sudo dnf makecache obnovte mezipaměť metadat všech povolených úložišť, abyste se ujistili, že data místního úložiště jsou aktuální. To lze použít při aktualizaci/instalaci balíčků nebo pokud byla poškozena metadata.

sudo dnf makecache

Spusťte následující příkaz a ověřte, zda bylo úložiště Jenkins přidáno do vašeho systému. Je to způsob, jak zkontrolovat aktuální seznam úložišť, který správci balíčků ukazuje, která úložiště byla povolena. Jinými slovy, je to způsob, jak zjistit, která úložiště jsou aktuálně sledována dnf.

sudo dnf repolist

Spusťte následující příkaz a nainstalujte Jenkins do vašeho systému.

dnf install -y jenkins

Po dokončení instalace příkazu spusťte následující příkaz a spusťte službu Jenkins.

sudo systemctl start jenkins

Spuštěním následujícího příkazu zkontrolujte stav služby Jenkins.

sudo systemctl status jenkins

Jenkins je nepřetržitá integrační služba, která může monitorovat provádění opakovaných úloh, jako je vytváření softwarového projektu nebo úlohy provozované cronem. Sledování stavu Jenkins nám může pomoci zjistit, zda běží podle očekávání. Tyto znalosti mohou být užitečné při odstraňování problémů s úlohami, které spouští a které nejsou úspěšné.

Uvidíte následující výstup.

Konfigurace brány firewall

Jenkins je váš server pro automatické sestavení, který pomáhá s nepřetržitou integrací a nasazením vašich projektů. Jenkins má schopnost umožnit připojení SSH provádět sestavení a úkoly na vzdálených podřízených uzlech. Budete však muset nakonfigurovat svůj firewall, aby umožnil Jenkinsovi přístup k těmto serverům.

Budete muset otevřít port 22 (SSH) a volitelně port 8080 (webový klient), aby se Jenkins mohl připojit ke vzdáleným serverům, na kterých sídlí vaše aplikace. Při používání cloudových virtuálních počítačů jsou tyto porty obvykle ve výchozím nastavení uzavřeny. Pokud nastavujete Jenkins na svém vlastním hardwaru, budete muset tyto porty povolit přes váš firewall nebo router.

Spuštěním následujícího příkazu otevřete tyto porty na vaší bráně firewall.

sudo firewall-cmd --permanent --zone=public --add-port=22/tcp
sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp

Spusťte následující příkaz a použijte změny. Příkaz sudo firewalld –reload zajistí, že budou znovu načtena aktuálně platná pravidla a konfigurace, pokud jsou k dispozici. To může být užitečné pro použití změn provedených prostřednictvím nástrojů firewall-cmd na běžící systém.

sudo firewall-cmd --reload

Nakonec spusťte následující příkaz a zkontrolujte, zda byla pravidla úspěšně přidána.

sudo firewall-cmd --list-all

Přístup k webovému uživatelskému rozhraní Jenkins

Nyní, když máte server Jenkins v provozu, ale chcete k němu přistupovat ve webovém prohlížeči. K Jenkins se můžete dostat návštěvou jeho IP adresy na portu 8080.

Pokud je například vaše IP adresa 192.168.1.100 a výchozí port je 8080, přejděte na následující adresu a přejděte na adresu Jenkins:192.168.1.100:8080

Když se pokusíte o přístup k webovému uživatelskému rozhraní Jenkins, zobrazí se Odemknout Jenkins obrazovka s výzvou, abyste přešli na /var/lib/jenkins/secrets/initialAdminPassword , Jak je ukázáno níže. Jedná se o zašifrovaná data, která obsahují heslo, které jste použili k přihlášení do řídicího panelu. Ukládá počáteční heslo správce v zašifrované podobě. Tím zajistíte, že uživatel se zlými úmysly, který získal přístup k vašemu serveru Jenkins, nebude mít heslo, které jste použili při prvním přihlášení.

Vraťte se zpět do svého terminálu, kde byste měli být stále přihlášeni jako uživatel root. Pro dešifrování zadejte následující příkaz:

cat /var/lib/jenkins/secrets/initialAdminPassword

Uvidíte výstup, který obsahuje heslo k webovému uživatelskému rozhraní Jenkins.

Zkopírujte a vložte toto do svého oblíbeného editoru a uložte jej někam do svého počítače. Toto heslo nyní můžete použít pro přístup k webovému rozhraní Jenkins.

Na další obrazovce vyberte možnost instalovat navrhované pluginy . Plugin není nic jiného než adresář s nějakými soubory. Když nainstalujete plugin, Jenkins zjistí adresář a povolí funkce, které jsou specifikovány v souborech.

Při první instalaci Jenkins byste měli zvolit možnost instalace navrhovaných pluginů. Tato možnost nainstaluje všechny pluginy, které jsou potřeba pro základní nastavení Jenkins. Žádný strach, vždy můžete změnit nebo přidat další pluginy později v sekci Pluginy ve webovém rozhraní.

Na stránce Vytvořit prvního uživatele správce zadejte své uživatelské jméno, e-mailovou adresu, celé jméno a heslo. Klikněte na Uložit a pokračovat pro přechod na další obrazovku.

Na další obrazovce ponechte výchozí nastavení a klikněte na Začít používat Jenkins

Budete přesměrováni na ovládací panel Jenkins, jak je znázorněno níže. Když jste poprvé nainstalovali Jenkins, pravděpodobně přišel s prázdnou stránkou jako výchozí. Můžete to vidět, když se podíváte na zdroj stránky – nic tam není.

Postupem času, jak začnete přidávat úlohy a pluginy, se stránka promění v řídicí panel, který zobrazuje vizuální informace o vašich projektech.

Závěr

V tomto příspěvku jste se naučili, jak nainstalovat a nakonfigurovat server Jenkins. Toto je však pouze začátek; je to velmi cenné prostředí pro automatizované sestavování, které lze využít ve vaší každodenní praxi. Pokud máte zpětnou vazbu nebo dotazy, zanechte své komentáře a návrhy v sekci níže.


Linux
  1. Jak nainstalovat Jenkins na CentOS 8

  2. Jak nainstalovat Jenkins na Debian 10 (Buster)

  3. Jak nainstalovat XAMPP na AlmaLinux 8

  1. Jak nainstalovat Jenkins Automation Server s Apache na Ubuntu 16.04

  2. Jak nainstalovat Jenkins Automation Server s Nginx na CentOS 7

  3. Jak nainstalovat Jenkins Automation Server s Apache na Ubuntu 18.04

  1. Jak nainstalovat Jenkins Automation Server s Apache na Ubuntu 20.04

  2. Jak nainstalovat OpenLiteSpeed ​​na AlmaLinux 8

  3. Jak nainstalovat Jenkins na AlmaLinux 8