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

So installieren Sie Jenkins Automation Server mit Nginx unter CentOS 7

Jenkins ist ein kostenloser und quelloffener Continuous-Integration-Server. Es ist in JAVA geschrieben. Es kann verwendet werden, um verschiedene Aufgaben im Zusammenhang mit der Softwareentwicklung zu automatisieren, z. B. das Erstellen von Tests und die Bereitstellung. Es unterstützt viele Versionskontrollsysteme wie Git, SVN, Mercurial usw.

In diesem Tutorial installieren wir Jenkins Automation Server auf dem CentOS 7-Server. Wir werden Nginx auch als Reverse-Proxy für Jenkins einrichten.

Voraussetzung

  • Minimaler CentOS 7-Server
  • Root-Rechte. Diese Anleitung wurde als Root-Benutzer geschrieben, wenn Sie als sudo-Benutzer angemeldet sind, führen Sie sudo -i.
  • aus

Basissystem aktualisieren

Vor der Installation eines Pakets wird empfohlen, die Pakete und das Repository mit dem folgenden Befehl zu aktualisieren.

yum -y update

Sobald Ihr System aktualisiert ist, fahren Sie mit der Installation von JAVA fort.

Installieren Sie JAVA 8

Jenkins unterstützt sowohl OpenJDK als auch Oracle JAVA, in diesem Tutorial installieren wir die neueste Version von OpenJDK auf dem Server. Führen Sie den folgenden Befehl aus, um OpenJDK auf Ihrem Server zu installieren.

yum install java-1.8.0-openjdk

Sie können jetzt die Java-Version mit dem folgenden Befehl überprüfen.

java -version

Sie erhalten die folgende Ausgabe.

[[email protected] ~]# java -version
openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-b12)
OpenJDK 64-Bit Server VM (build 25.131-b12, mixed mode)

Sie müssen auch prüfen, ob die Umgebungsvariable JAVA_HOME gesetzt ist. Führen Sie dafür den folgenden Befehl aus.

echo $JAVA_HOME

Wenn Sie eine Null- oder Leerausgabe erhalten, müssen Sie die JAVA_HOME-Variable manuell festlegen. Bearbeiten Sie die .bash_profile-Datei mit Ihrem bevorzugten Editor. In diesem Tutorial verwenden wir den Nano-Editor. Führen Sie den folgenden Befehl aus, um .bash_profile mit nano zu bearbeiten.

nano ~/.bash_profile

Fügen Sie nun am Ende der Datei die folgenden Zeilen hinzu.

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-3.b12.el7_3.x86_64/
export JRE_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-3.b12.el7_3.x86_64/jre

Sourcen Sie nun die Datei mit dem folgenden Befehl.

source ~/.bash_profile

Jetzt können Sie den Befehl echo $JAVA_HOME erneut ausführen, um zu prüfen, ob die Umgebungsvariable gesetzt ist oder nicht.

[[email protected] ~]# echo $JAVA_HOME 
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-3.b12.el7_3.x86_64/

Nachdem Sie JAVA installiert haben, können Sie mit der Installation von Jenkins fortfahren.

Jenkins installieren

Jenkins kann direkt installiert werden, indem das Repository hinzugefügt und der GPG-Schlüssel importiert wird. Fügen Sie das Jenkins-Repository zu Ihrem System hinzu, indem Sie den folgenden Befehl ausführen.

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

Wenn Sie wget nicht installiert haben, können Sie yum -y install wget.

ausführen

Importieren Sie den GPG-Schlüssel, indem Sie den folgenden Befehl ausführen.

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

Sobald der Import erfolgreich ist, können Sie Jenkins installieren, indem Sie den folgenden Befehl ausführen.

yum -y install jenkins

Jenkins ist jetzt auf Ihrem Server installiert. Alle erforderlichen Pakete sind nun installiert. Das Installationsprogramm hat auch einen neuen Benutzer-Jenkins erstellt, um den Prozess auszuführen. Sie können fortfahren, um den Server zu starten.

Starte Jenkins

Sie können Jenkins starten, indem Sie den folgenden Befehl ausführen.

systemctl start jenkins

Um Jenkins zu stoppen, können Sie den folgenden Befehl ausführen.

systemctl stop jenkins

Sie können den Status des Prozesses überprüfen, indem Sie den folgenden Befehl ausführen.

systemctl status jenkins

Nginx installieren

Anstatt auf die Anwendung über Port 8080 zuzugreifen, können wir einen Reverse-Proxy für die Anwendung entweder mit dem Apache- oder Nginx-Webserver erstellen. In diesem Tutorial verwenden wir nginx als Reverse-Proxy für Ihre Anwendung. Jetzt wird nginx hinter dem nginx-Proxyserver ausgeführt. nginx ist im standardmäßigen YUM-Repository nicht verfügbar. Sie müssen das EPEL-Repository installieren, um Nginx zu installieren.

yum -y install epel-release

Jetzt können Sie Nginx installieren, indem Sie Folgendes ausführen:

yum -y install nginx

Erstellen Sie einen neuen Serverblock, indem Sie den folgenden Befehl ausführen.

nano /etc/nginx/conf.d/jenkins.conf

Füllen Sie die Datei mit dem folgenden Inhalt. Ersetzen Sie ci.yourdomain.com durch Ihren tatsächlichen Domainnamen.

upstream jenkins{
    server 127.0.0.1:8080;
}

server{
    listen      80;
    server_name ci.yourdomain.com;

    access_log  /var/log/nginx/jenkins.access.log;
    error_log   /var/log/nginx/jenkins.error.log;

    proxy_buffers 16 64k;
    proxy_buffer_size 128k;

    location / {
        proxy_pass  http://jenkins;
        proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
        proxy_redirect off;

        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 https;
    }

}

Speichern Sie die Datei und beenden Sie den Editor. Jetzt können Sie Nginx starten, indem Sie den folgenden Befehl ausführen.

systemctl start nginx

Um Nginx zu ermöglichen, beim Booten automatisch zu starten, führen Sie den folgenden Befehl aus.

systemctl enable nginx

Firewall und SELinux konfigurieren

Wenn auf Ihrem Server eine Firewall ausgeführt wird, müssen Sie Port 8080 und den Standard-HTTP-Port durch die Firewall zulassen. Führen Sie den folgenden Befehl aus, um die Firewall-Regeln hinzuzufügen, um die Ports 8080 und 80 zuzulassen.

firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --zone=public --add-service=http --permanent

Laden Sie die Firewall-Zonen neu, indem Sie Folgendes ausführen:

firewall-cmd --reload

Konfigurieren Sie SELinux für die Nginx-Proxy-Konfiguration, indem Sie den folgenden Befehl ausführen.

setsebool httpd_can_network_connect 1 -P

Jenkins konfigurieren

Sie können jetzt auf die Weboberfläche des Jenkins CI-Servers zugreifen, indem Sie auf die folgende Webadresse gehen.

http://ci.yourdomain.com

Ersetzen Sie ci.yourdomain.com durch Ihre tatsächliche Domain. Sie werden die folgende Oberfläche sehen.

Sie werden nach Ihrem anfänglichen Admin-Passwort gefragt, das vom Installationsprogramm generiert und in der Datei /var/lib/jenkins/secrets/initialAdminPassword gespeichert wird. Führen Sie den folgenden Befehl aus, um das anfängliche Administratorkennwort zu erhalten.

cat /var/lib/jenkins/secrets/initialAdminPassword

Verwenden Sie das Passwort, um sich anzumelden, und fahren Sie fort.

Im nächsten Abschnitt werden Sie gefragt, welche Plugins Sie installieren möchten. Anfängern wird empfohlen, Vorgeschlagene Plugins installieren zu wählen .

Dadurch werden alle Plugins installiert, die für den Anfang erforderlich sind.

Auf der nächsten Oberfläche werden die Plugins installiert.

Jetzt müssen Sie einen Administratorbenutzer für Ihr Jenkins-Admin-Dashboard erstellen.

Schließlich werden Sie zum administrativen Dashboard von Jenkins weitergeleitet.

Schlussfolgerung

Sie können Jenkins jetzt für die kontinuierliche Integration in der Softwareentwicklung verwenden. Weitere Informationen zu Jenkins finden Sie auf der Jenkins-Website.


Cent OS
  1. So installieren Sie WordPress mit Nginx unter CentOS 7

  2. So installieren Sie phpMyAdmin mit Nginx unter CentOS 7

  3. So installieren Sie Nginx unter CentOS 8

  4. So installieren Sie phpMyAdmin mit Nginx unter CentOS 7 / RHEL 7

  5. So installieren Sie WordPress mit LEMP Stack auf CentOS 8

So installieren Sie Nginx mit ngx_pagespeed unter CentOS

So installieren Sie Nginx mit PHP-FastCGI unter CentOS 6

So installieren Sie Magento mit Nginx unter CentOS 7

So installieren Sie Nginx unter CentOS 6

So installieren Sie LetsEncrypt SSL mit Nginx unter CentOS 6

So installieren Sie Nginx unter CentOS 7