GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So installieren und konfigurieren Sie den Nexus Repository Manager unter Ubuntu 20.04

Nexus ist ein verwaltetes Repository, das eine Plattform bietet, die Ihren gesamten Softwareentwicklungslebenszyklus schützt. Es ermöglicht Ihnen, Ihre Abhängigkeiten zu sammeln und zu verwalten und erleichtert die Verteilung Ihrer Software. Es ist eine einzige Quelle für alle Komponenten, Binärdateien und Build-Artefakte. Es bietet Unterstützung für Gradle, Ant, Maven und Ivy und ermöglicht es Entwicklern, Komponenten über Binärdateien, Container, Baugruppen und fertige Produkte zu verwalten. Sie können Nexus auch in Ihre bestehenden Benutzer- und Authentifizierungssysteme wie LDAP und Atlassian Crowd integrieren.

In diesem Tutorial zeigen wir Ihnen, wie Sie den Nexus-Repository-Manager unter Ubuntu 20.04 installieren.

Voraussetzungen

  • Ein Server mit Ubuntu 20.04.
  • Ein Root-Passwort wird auf dem Server konfiguriert.

Erste Schritte

Bevor Sie beginnen, müssen Sie Ihre Systempakete auf die neueste Version aktualisieren. Sie können sie mit dem folgenden Befehl aktualisieren:

apt-get update -y

Sobald Ihr Server aktualisiert ist, können Sie mit dem nächsten Schritt fortfahren.

Installieren Sie Java

Nexus basiert auf Java, daher müssen Sie Java Version 8 auf Ihrem System installieren. Sie können es mit dem folgenden Befehl installieren:

apt-get install openjdk-8-jdk -y

Sobald Java installiert ist, können Sie die installierte Version von Java mit dem folgenden Befehl überprüfen:

Java-Version

Sie sollten die folgende Ausgabe erhalten:

openjdk-Version „1.8.0_282“OpenJDK-Laufzeitumgebung (Build 1.8.0_282-8u282-b08-0ubuntu1~20.04-b08)OpenJDK 64-Bit-Server-VM (Build 25.282-b08, gemischter Modus)

Sobald Java installiert ist, können Sie mit dem nächsten Schritt fortfahren.

Nexus installieren

Bevor Sie beginnen, müssen Sie einen separaten Benutzer erstellen, um Nexus auszuführen. Sie können es erstellen, indem Sie den folgenden Befehl ausführen:

useradd -M -d /opt/nexus -s /bin/bash -r nexus

Als nächstes erlaubt es dem Nexus-Benutzer, alle Benutzer mit sudo ohne Passwort auszuführen. Sie können dies tun, indem Sie den folgenden Befehl ausführen:

echo "nexus ALL=(ALL) NOPASSWD:ALL"> /etc/sudoers.d/nexus

Erstellen Sie als Nächstes ein Verzeichnis für Nexus und laden Sie die neueste Version von Nexus mit dem folgenden Befehl herunter:

mkdir /opt/nexus
wget https://sonatype-download.global.ssl.fastly.net/repository/downloads-prod-group/3/nexus-3.29.2-02-unix.tar .gz

Wenn der Download abgeschlossen ist, extrahieren Sie die heruntergeladene Datei in das Verzeichnis /opt/nexus, indem Sie den folgenden Befehl ausführen:

tar xzf nexus-3.29.2-02-unix.tar.gz -C /opt/nexus --strip-components=1

Legen Sie als Nächstes die ordnungsgemäße Eigentümerschaft für das Nexus-Verzeichnis fest, indem Sie den folgenden Befehl ausführen:

chown -R nexus:nexus /opt/nexus

Bearbeiten Sie als Nächstes die nexus.vmoptions Konfigurationsdatei und definieren Sie die maximale Speichergröße:

nano /opt/nexus/bin/nexus.vmoptions

Maximale Java-Speichergröße festlegen und „../sonatype-work“ durch „./sonatype-work“ ersetzen:

-Xms1024m-Xmx1024m-XX:MaxDirectMemorySize=1024m-XX:LogFile=./sonatype-work/nexus3/log/jvm.log-XX:-OmitStackTraceInFastThrow-Djava.net.preferIPv4Stack=true-Dkaraf.home=. -Dkaraf.base=.-Dkaraf.etc=etc/karaf-Djava.util.logging.config.file=/etc/karaf/java.util.logging.properties-Dkaraf.data=./sonatype-work/nexus3- Dkaraf.log=./sonatype-work/nexus3/log-Djava.io.tmpdir=./sonatype-work/nexus3/tmp

Speichern und schließen Sie die Datei, bearbeiten Sie dann die Datei nexus.rc und definieren Sie die Ausführung als Benutzer:

nano /opt/nexus/bin/nexus.rc

Entkommentieren und ändern Sie die folgende Zeile mit nexus user:

run_as_user="nexus"

Speichern und schließen Sie die Datei und starten Sie dann den Nexxus-Dienst mit dem folgenden Befehl:

sudo -u nexus /opt/nexus/bin/nexus start

Als nächstes überprüfen Sie das Nexus mit dem folgenden Befehl:

tail -f /opt/nexus/sonatype-work/nexus3/log/nexus.log

Sie sollten die folgende Ausgabe erhalten:

2021-02-23 12:20:51,839+0000 INFO [jetty-main-1] *SYSTEM com.softwarementors.extjs.djn.servlet.DirectJNgineServlet - GLOBALE Konfiguration des Servlets:registrationConfiguratorClass=2021-02-23 12:20:51,853+0000 INFO [jetty-main-1] *SYSTEM com.softwarementors.extjs.djn.jscodegen.CodeFileGenerator – Erstellen von Quelldateien für APIs...2021-02-23 12:20:52,582+0000 INFO [jetty -main-1] *SYSTEM org.sonatype.nexus.siesta.SiestaServlet - JAX-RS RuntimeDelegate:org.sona[email protected]649a69ca2021-02-23 12:20:52,611+0000 INFO [jetty-main-1] * SYSTEM org.jboss.resteasy.plugins.validation.i18n - RESTEASY008550:CDI, das ValidatorFactory unterstützt, kann nicht gefunden werden. Using default ValidatorFactory2021-02-23 12:20:53,811+0000 INFO [jetty-main-1] *SYSTEM org.sonatype.nexus.siesta.SiestaServlet - Initialized2021-02-23 12:20:53,817+0000 INFO [jetty- main-1] *SYSTEM org.sonatype.nexus.repository.httpbridge.internal.ViewServlet - Initialized2021-02-23 12:20:53,852+0000 INFO [jetty-main-1] *SYSTEM org.eclipse.jetty.server. handler.ContextHandler - Gestartet [email protected]{Sonatype Nexus,/,file:///opt/nexus/public/,AVAILABLE}2021-02-23 12:20:53,883+0000 INFO [jetty-main-1] * SYSTEM org.eclipse.jetty.server.AbstractConnector – Gestartet [email protected]{HTTP/1.1, (http/1.1)}{0.0.0.0:8081}2021-02-23 12:20:53,884+0000 INFO [jetty- main-1] *SYSTEM org.eclipse.jetty.server.Server - Gestartet @37529ms2021-02-23 12:20:53,884+0000 INFO [jetty-main-1] *SYSTEM org.sonatype.nexus.bootstrap.jetty. JettyServer - ------------------------------------------------ -Sonatype Nexus OSS 3.29.2-02 gestartet---------------------------------------- ---------

An diesem Punkt wird Nexus gestartet und lauscht auf Port 8081. Sie können dies mit dem folgenden Befehl überprüfen:

ss -altnp | grep 8081

Sie sollten die folgende Ausgabe erhalten:

LISTEN 0 50 0.0.0.0:8081 0.0.0.0:* Benutzer:(("java",pid=5548,fd=795)) 

Stoppen Sie als Nächstes den Nexus-Dienst mit dem folgenden Befehl:

/opt/nexus/bin/nexus stop

Erstellen Sie eine Systemd-Dienstdatei für Nexus

Als Nächstes müssen Sie eine systemd-Dienstdatei erstellen, um den Nexus-Dienst zu verwalten. Sie können es mit dem folgenden Befehl erstellen:

nano /etc/systemd/system/nexus.service

Fügen Sie die folgenden Zeilen hinzu:

[Unit]Description=nexus serviceAfter=network.target[Service]Type=forkingLimitNOFILE=65536ExecStart=/opt/nexus/bin/nexus startExecStop=/opt/nexus/bin/nexus stopUser=nexusRestart=on-abort[Install ]WantedBy=multi-user.target

Speichern und schließen Sie die Datei und laden Sie dann den systemd-Daemon mit dem folgenden Befehl neu:

systemctl daemon-reload

Starten Sie als Nächstes den Nexus-Dienst und ermöglichen Sie ihm, beim Systemneustart mit dem folgenden Befehl zu starten:

systemctl Nexus starten
systemctl Nexus aktivieren

Sie können den Status des Nexus-Dienstes auch mit dem folgenden Befehl überprüfen:

Systemctl-Status-Nexus

Sie sollten die folgende Ausgabe erhalten:

? nexus.service - nexus service Geladen:geladen (/etc/systemd/system/nexus.service; deaktiviert; Herstellervoreinstellung:aktiviert) Aktiv:aktiv (läuft) seit Di 2021-02-23 12:22:49 UTC; Vor 15s Prozess:6181 ExecStart=/opt/nexus/bin/nexus start (code=exited, status=0/SUCCESS) Main PID:6368 (java) Tasks:40 (limit:4691) Memory:642.9M CGroup:/system .slice/nexus.service ??6368 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java -server -Dinstall4j.jvmDir=/usr/lib/jvm/java-8-openjdk-amd64 /jre -Dexe4j.mo>23. Februar 12:22:49 ubuntu2004 systemd[1]:Nexus-Dienst wird gestartet...23. Februar 12:22:49 ubuntu2004 nexus[6181]:nexus wird gestartet 23. Februar 12:22:49 ubuntu2004 systemd[ 1]:Nexus service.lines 1-13/13 (ENDE) gestartet

Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Konfigurieren Sie Nginx als Reverse-Proxy für Nexus

Als nächstes müssen Sie Nginx installieren und Nginx als Reverse-Proxy konfigurieren. Installieren Sie zuerst die Nginx-Pakete mit dem folgenden Befehl:

apt-get install nginx -y

Sobald Nginx installiert ist, erstellen Sie mit dem folgenden Befehl eine Konfigurationsdatei für den virtuellen Nginx-Host:

nano /etc/nginx/conf.d/nexus.conf

Fügen Sie die folgenden Zeilen hinzu:

Upstream-Backend { server 127.0.0.1:8081;}server { listen 80; server_name nexus.example.com; Standort / { Proxy_Pass http://backend/; Proxy_http_Version 1.1; Proxy_set_header Upgrade $http_upgrade; proxy_set_header Verbindung "upgrade"; Proxy_set_header Host $http_host; Proxy_Set_Header X-Real-IP $remote_addr; Proxy_set_header X-Forward-For $proxy_add_x_forwarded_for; proxy_set_header X-Forward-Proto http; proxy_set_header X-Nginx-Proxy true; Proxy-Weiterleitung aus; }}

Speichern und schließen Sie die Datei und überprüfen Sie dann die Nginx-Konfigurationsdatei mit dem folgenden Befehl:

nginx -t

Sie sollten die folgende Ausgabe erhalten:

nginx:Die Syntax der Konfigurationsdatei /etc/nginx/nginx.conf ist oknginx:Der Test der Konfigurationsdatei /etc/nginx/nginx.conf ist erfolgreich

Starten Sie abschließend den Nginx-Dienst neu, um die Änderungen zu übernehmen:

systemctl startet nginx neu

Sie können den Status von Nginx auch mit dem folgenden Befehl überprüfen:

systemctl status nginx

Sie sollten die folgende Ausgabe erhalten:

? nginx.service - Ein Hochleistungs-Webserver und ein Reverse-Proxy-Server Geladen:geladen (/lib/systemd/system/nginx.service; aktiviert; Herstellervoreinstellung:aktiviert) Aktiv:aktiv (läuft) seit Di 2021-02-23 12 :24:57 UTC; vor 4s Dokumente:man:nginx(8) Prozess:7106 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process an; (code=beendet, status=0/SUCCESS) Prozess:7107 ExecStart=/usr/sbin/nginx -g daemon on; master_process an; (code=exited, status=0/SUCCESS) Main PID:7123 (nginx) Tasks:3 (limit:4691) Memory:3.5M CGroup:/system.slice/nginx.service ??7123 nginx:master process /usr/ sbin/nginx -g Daemon an; master_process an; ??7124 Nginx:Arbeitsprozess 1]:Gestartet Ein Hochleistungs-Webserver und ein Reverse-Proxy-Server.

Zugriff auf die Nexus-Weboberfläche

Drucken Sie vor dem Zugriff auf die Nexus-Webbenutzeroberfläche das Nexus-Administratorkennwort mit dem folgenden Befehl aus:

cat /opt/nexus/sonatype-work/nexus3/admin.password

Sie sollten die folgende Ausgabe erhalten:

b7c899cf-c6d3-4d11-a4cb-9a44e5d1787e

Öffnen Sie jetzt Ihren Webbrowser und greifen Sie über die URL http://nexus.example.com auf die Nexus-Webbenutzeroberfläche zu . Sie werden auf die folgende Seite weitergeleitet:

Klicken Sie nun auf Anmelden Taste. Sie werden zur Anmeldeseite von Nexus weitergeleitet:

Geben Sie Ihren Admin-Benutzernamen und Ihr Passwort ein und klicken Sie auf Anmelden Taste. Sie sollten die Nexus-Einrichtungsseite sehen:

Klicken Sie auf Weiter Schaltfläche, um fortzufahren. Sie sollten die folgende Seite sehen:

Legen Sie Ihr neues Passwort fest und klicken Sie auf Weiter Taste. Sie sollten die folgende Seite sehen:

Wählen Sie die Option "Anonymen Zugriff aktivieren" und klicken Sie auf Weiter Taste. Sie sollten die folgende Seite sehen:

Klicken Sie auf Fertig stellen , um die Einrichtung abzuschließen, und klicken Sie auf das Einstellrad Symbol. Sie sollten das Nexus-Repository-Dashboard sehen:

Schlussfolgerung

Herzliche Glückwünsche! Sie haben den Nexus-Repository-Manager mit Nginx erfolgreich als Reverse-Proxy auf dem Ubuntu 20.04-Server installiert. Fühlen Sie sich frei, mich zu fragen, wenn Sie irgendwelche Fragen haben.


Ubuntu
  1. So installieren und konfigurieren Sie Redis unter Ubuntu 18.04

  2. So installieren und konfigurieren Sie Redmine unter Ubuntu 18.04

  3. So installieren und konfigurieren Sie Samba unter Ubuntu 18.04

  4. So installieren und konfigurieren Sie Redis unter Ubuntu 20.04

  5. So installieren und konfigurieren Sie Jenkins unter Ubuntu 20.04

So installieren und konfigurieren Sie Cacti unter Ubuntu 20.04

So installieren und konfigurieren Sie Git unter Ubuntu 20.04

So installieren und konfigurieren Sie OpenVAS 9 unter Ubuntu

So installieren und konfigurieren Sie den VNC-Server unter Ubuntu 20.04

So installieren und konfigurieren Sie Elasticsearch unter Ubuntu 20.04

So installieren und konfigurieren Sie Nextcloud unter Ubuntu 20.04