GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

Installieren von Sonatype Nexus Repository OSS auf CentOS 7

Sonatype Nexus ist ein beliebter Repository-Manager, der weltweit für die meisten Komponenten, Binärdateien und Build-Artefakte verwendet wird. Es bietet Unterstützung für das Java Virtual Machine (JVM)-Ökosystem, einschließlich Gradle, Ant, Maven und Ivy.

Kompatibel mit Standardtools wie Eclipse, IntelliJ, Hudson, Jenkins, Puppet, Chef, Docker usw., Sonatype Nexus Repo kann Entwicklungskomponenten bis zur Bereitstellung für Binärcontainer, Baugruppen und fertige Produkte verwalten.

In diesem Tutorial stellen wir Ihnen eine umfassende Anleitung zum Einrichten der Sonatype Nexus Repository OSS-Version unter CentOS 7 zur Verfügung.

Sonatype Nexus Repository OSS auf CentOS 7 installieren

Bevor Sie mit dem Tutorial beginnen, sehen wir uns die Mindestsystemanforderungen für die Ausführung von Sonatype Nexus Repo an.

Systemanforderungen

  • Mindest-CPUs:4, empfohlene CPUs:8+
  • Physischer Mindestspeicher/RAM auf dem Host 8 GB

1. Vorinstallation

Beginnen Sie mit der Einstellung des Hostnamens.

hostnamectl set-hostname nexus

Aktualisieren Sie Ihr CentOS-System.

 yum update -y

Installieren Sie Java mit dem folgenden Befehl:

yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel

Überprüfen Sie nach Abschluss der Installation die Java-Version, um sicherzustellen, dass Sie bereit sind, mit dem nächsten Schritt des Herunterladens des Repos fortzufahren.

java -version

2. Laden Sie Nexus Repository Manager 3 herunter

Navigieren Sie zum Opt-Verzeichnis:

cd /opt

Kopieren Sie die neueste URL des Repos von der offiziellen Website und laden Sie sie dann mit wget herunter.

wget https://download.sonatype.com/nexus/3/latest-unix.tar.gz

Extrahieren Sie die tar-Datei.

tar -xvzf latest-unix.tar.gz

Sie sollten zwei Verzeichnisse sehen, einschließlich Nexus-Dateien und Nexus-Datenverzeichnis.

ls -lh

Benennen Sie die Ordner um.

mv nexus-3.20.1-01 nexus
mv sonatype-work nexusdata

3. Benutzer/Berechtigungen und Konfigurationen festlegen

I. Fügen Sie einen Benutzer für einen Nexus-Dienst hinzu.

useradd --system --no-create-home nexus

II. Legen Sie die Eigentumsrechte für Nexus-Dateien und Nexus-Daten fest.

chown -R nexus:nexus /opt/nexus
chown -R nexus:nexus /opt/nexusdata

III. Ändern Sie die Nexus-Konfiguration und legen Sie das benutzerdefinierte Datenverzeichnis fest

Bearbeiten Sie „nexus.vmoptions“.

vim /opt/nexus/bin/nexus.vmoptions

Ändern Sie das Datenverzeichnis.

-Xms2703m
-Xmx2703m
-XX:MaxDirectMemorySize=2703m
-XX:+UnlockDiagnosticVMOptions
-XX:+LogVMOutput
-XX:LogFile=../nexusdata/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=../nexusdata/nexus3
-Dkaraf.log=../nexusdata/nexus3/log
-Djava.io.tmpdir=../nexusdata/nexus3/tmp
-Dkaraf.startLocalConsole=false

Speichern und beenden Sie die Datei.

IV. Ändern Sie den Benutzer für das Nexus-Dienstkonto.

Bearbeiten Sie die Datei „nexus.rc“.

vim /opt/nexus/bin/nexus.rc

Entkommentieren Sie den Parameter „run_as_user“ und fügen Sie einen neuen Wert hinzu.

run_as_user="nexus"

V. Stoppen Sie das Abhören von Remote-Verbindungen.

Wir müssen die Datei „nexus-default.properties“ ändern.

vim /opt/nexus/etc/nexus-default.properties

Ändern Sie application-host=0.0.0.0 in application-host=127.0.0.1.

VI. Konfigurieren Sie das Limit für offene Dateien des Nexus-Benutzers.

vim /etc/security/limits.conf

Fügen Sie der Datei die folgenden Werte hinzu.

nexus - nofile 65536

Speichern und die Exit-Datei.

4. Legen Sie Nexus als Systemdienst fest

Erstellen Sie die Systemd-Dienstdatei in „/etc/systemd/system/“.

vim /etc/systemd/system/nexus.service

Fügen Sie der Datei Folgendes hinzu.

[Unit]
Description=Nexus Service
After=syslog.target network.target

[Service]
Type=forking
LimitNOFILE=65536
ExecStart=/opt/nexus/bin/nexus start
ExecStop=/opt/nexus/bin/nexus stop
User=nexus
Group=nexus
Restart=on-failure

[Install]
WantedBy=multi-user.target

Systemctl neu laden.

systemctl daemon-reload

Dienst beim Systemstart aktivieren.

systemctl enable nexus.service

Dienst starten.

systemctl start nexus.service

Überwachen Sie die Protokolldatei.

tail -f /opt/nexusdata/nexus3/log/nexus.log

Überprüfen Sie den Serviceport.

netstat -tunlp | grep 8081

5. Nginx einrichten

Epel-Repositories einrichten.

yum install -y epel-release

Listen Sie die Repositories auf.

yum repolist

Nginx installieren.

yum install nginx

setze nginx beim Systemstart

systemctl enable nginx

Überprüfen Sie den Status von Nginx und starten Sie den Dienst, wenn der Dienst nicht ausgeführt wird.

systemctl status nginx
systemctl start nginx

6. Legen Sie DNS-Einträge für die Server fest.

Gehen Sie dann zu Ihrem DNS-Manager und fügen Sie einen A-Eintrag für Ihren Server hinzu.

A Domain Name Server IP

Hier haben wir AWS Route 53 verwendet, um unser DNS einzurichten.

7. Konfigurieren Sie SSL mit certbot

I. Installieren Sie zuerst certbot-Pakete.

yum install certbot python2-certbot-nginx

II. Zertifikate installieren.

certbot --nginx

Es werden einige Fragen gestellt und E-Mail, Domainname und erforderliche Eingaben wie folgt eingegeben.

Nachdem die Installation abgeschlossen ist, öffnen Sie nginx.conf.

vim /etc/nginx/nginx.conf

Sie können die SSL-Konfiguration von certbot sehen.

III. Proxy-Pass hinzufügen

Fügen Sie die folgenden Inhalte zu Standortblöcken hinzu.

location / {

      proxy_pass "http://127.0.0.1:8081";
      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_set_header        X-Forwarded-Ssl on;
      proxy_read_timeout      300;
      proxy_connect_timeout   300;

 }

Speichern und beenden Sie die Datei.

Überprüfen Sie die nginx-Syntax:

nginx -t

Starten Sie Nginx neu:

systemctl restart nginx

8. Legen Sie Firewall-Regeln fest

Aktivieren Sie nun den https-Zugriff auf eine bestimmte öffentliche IP. Führen Sie den folgenden Befehl aus.

firewall-cmd --permanent --zone=public --add-rich-rule='
rule family="ipv4"
source address="123.44.8.180/32"
port protocol="tcp" port="443" accept'

Wenn Sie https öffentlich öffnen müssen, führen Sie den folgenden Befehl aus:

firewall-cmd --zone=public --permanent --add-service=https

Laden Sie die Firewall neu.

firewall-cmd --reload

9. SELinux-Richtlinie für Nginx einrichten

setsebool -P httpd_can_network_connect 1

10. Durchsuchen Sie die Website mit Ihrem Domainnamen

eg: https://nexusrepo.fosslinux.com/

11. Melden Sie sich beim Server an

Melden Sie sich mit dem Standardbenutzernamen als „admin“ an. Führen Sie den folgenden Befehl auf dem Server aus und erhalten Sie das Passwort.

cat /opt/nexusdata/nexus3/admin.password

Nach der ersten Anmeldung sollten Sie ein ähnliches Fenster sehen, wie unten gezeigt.

Klicken Sie auf Weiter und richten Sie ein neues Passwort für den Admin-Benutzer ein.

Klicken Sie erneut auf Weiter, und Sie sollten das Fenster „Anonymen Zugriff konfigurieren“ sehen. Aktivieren Sie keinen anonymen Zugriff.

Klicken Sie auf die Schaltfläche Weiter, und Sie können die vollständige Einrichtung sehen.

Klicken Sie auf Beenden.

Das ist alles über die Installation des Sonatype Nexus Repository OSS auf Ihrem CentOS 7.


Cent OS
  1. Installieren von Tomcat 8 auf Centos 6

  2. Installation von MariaDB auf CentOS 7

  3. Installation von PhpMydmin (Centos oder Ubuntu)

  4. Installation von PostgreSQL und phpPgAdmin in CentOS

  5. Installation von PhpMydmin (Centos oder Ubuntu)

So installieren Sie phpMyAdmin unter CentOS 8

So richten Sie ein lokales Yum/DNF-Repository unter CentOS 8 ein

So aktivieren Sie das EPEL-Repository unter CentOS 8

So aktivieren Sie das REMI-Repository unter CentOS 8

Installieren von Apache und PHP unter CentOS 8

So installieren Sie das REMI-Repository unter CentOS 8