Praktische Hinweise zur Installation von Jenkins mit Docker-Compose

Praktische Hinweise zur Installation von Jenkins mit Docker-Compose

Erstellen Sie ein Verzeichnis

cd /usr/local/docker/
mkdir jenkins-docker
cd jenkins-docker

Dockerfile erstellen

vi Docker-Datei
# Folgendes ist der Dateiinhalt VON jenkins/jenkins:lts

BENUTZER root
RUN mkdir -p /usr/local/ && \
	cd /usr/local/ && \
	curl -fsSL https://mirror.bit.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz > /usr/local/apache-maven-3.6.3-bin.tar.gz && \
	tar xzf /usr/local/apache-maven-3.6.3-bin.tar.gz -C /usr/local/ && \
	rm -rf /usr/local/apache-maven-3.6.3-bin.tar.gz && \
	ln -s /usr/local/apache-maven-3.6.3/bin/mvn /bin/mvn && \
	ln -s /usr/local/apache-maven-3.6.3/bin/mvnyjp /bin/mvnyjp && \
	export PATH=/usr/local/apache-maven-3.6.3/bin:$PATH

BENUTZER jenkins

Erstellen des Images

docker build -t jenkins-jiacs:lts.

Zeigen Sie die Gruppen-ID von Docker auf dem Host an

Katze /etc/Gruppe | grep Docker

# [root@localhost jenkins-docker]# cat /etc/group | grep docker
# docker:x:994:
# Mein Wert ist 994, abhängig vom tatsächlichen Wert

Starten Sie den Jenkins-Container (beginnen Sie mit der Docker-Befehlszeile).

# Erstellen Sie vor dem Starten des Containers den Ordner /usr/local/docker/jenkins-docker/data und erteilen Sie Berechtigungen. # /usr/local/docker/jenkins-docker/config/settings.xml Diese Datei wird von selbst bereitgestellt (privater Server und andere Informationen können angepasst werden).
mkdir-Daten
chmod -R 777 Daten

docker run -d -p 8080:8080 -p 50000:50000 \
    -v /usr/local/docker/jenkins-docker/data:/var/jenkins_home \
    -v /etc/localtime:/etc/localtime:ro \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v /etc/docker:/etc/docker \
    -v /usr/bin/docker:/usr/bin/docker \
    -v /usr/local/bin/docker-compose:/usr/local/bin/docker-compose \
    -v /usr/local/docker/jenkins-docker/config/settings.xml:/usr/local/apache-maven-3.6.3/conf/settings.xml \
    --group-add=994 \
    --name mein-jenkins \
    jenkins-jiacs:lts
# veranschaulichen:
# 1. -v /usr/local/docker/jenkins-docker/data:/var/jenkins_home =》Jenkins-Daten persistent speichern# 2. -v /etc/localtime:/etc/localtime:ro =》Die Zeit des Jenkins-Containers so einstellen, dass sie mit der des Hosts übereinstimmt# 3. -v /etc/docker:/etc/docker =》Der im Jenkins-Container verwendete Docker ist der auf dem Host installierte Docker, der sicherstellt, dass der von Jenkins bereitgestellte Dienst auf dem Host gestartet wird# 4. -v /usr/local/bin/docker-compose:/usr/local/bin/docker-compose Wenn auf dem Host Docker-Compose installiert ist, können Sie das Datenvolumen hinzufügen, wenn der Jenkins-Container es verwenden muss# -v /usr/local/docker/jenkins-docker/config/settings.xml:/usr/local/apache-maven-3.6.3/conf/settings.xml
# --group-add=994 Setzen Sie die Benutzergruppe des gestarteten Containers auf die Benutzergruppe von Docker auf dem Hostcomputer, um sicherzustellen, dass der Jenkins-Container die Berechtigung hat, den Docker-Befehl des Hostcomputers auszuführen

Starten Sie den Jenkins-Container (docker-compose start)

cd /usr/local/docker/jenkins-docker
vi jenkins-docker.yaml
version: '2' # Ändern Sie die Versionsnummer nicht, einige Versionen unterstützen den Parameter group_add nicht. Dienste:
  Jenkins:
    Bild: „jenkins-jiacs:lts“
    Containername: mein-Jenkins
    # Neustart: immer
    Häfen:
      - „8080:8080“
      - „50000:50000“
    Gruppen hinzufügen:
      - 994
    Bände:
      - ./data:/var/jenkins_home
      – /etc/localtime:/etc/localtime:ro
      – /var/run/docker.sock:/var/run/docker.sock
      – /etc/docker:/etc/docker
      – /usr/bin/docker:/usr/bin/docker
      – /usr/local/bin/docker-compose:/usr/local/bin/docker-compose
      - ./config/settings.xml:/usr/local/apache-maven-3.6.3/conf/settings.xml

Start-up

docker-compose -f jenkins-docker.yaml up -d

Container anzeigen

Docker PS 

Bildbeschreibung hier einfügen

Betreten des Containers

docker exec -it 0d8b70ba5cec bash
# Das anfängliche Jenkins-Passwort anzeigen (im Container ausgeführt)
cat /var/jenkins_home/secrets/initialAdminPassword

Öffnen Sie den Browser und greifen Sie auf den Jenkins-Dienst zu

http://<Host-IP>:8080/

Geben Sie das soeben ermittelte Anfangspasswort ein

Bildbeschreibung hier einfügen

Wählen Sie die empfohlenen Plugins zur Installation aus und warten Sie, bis die Plugins installiert sind (dies dauert etwas länger). Wenn die Installation einiger Plugins fehlschlägt, können Sie auf „Wiederholen“ klicken, um die Installation fortzusetzen, oder die fehlgeschlagenen Plugins aufzeichnen und sie manuell unter „Systemkonfiguration – Plugin-Konfiguration“ installieren.

Bildbeschreibung hier einfügen

Jenkins-Zeitzone ändern

Systemverwaltung > Skript-Befehlszeile, geben Sie den folgenden Befehl ein und klicken Sie auf [Ausführen]

System.setProperty('org.apache.commons.jelly.tags.fmt.timeZone', 'Asia/Shanghai')

Installation abgeschlossen

Dies ist das Ende dieses Artikels zur Installation von Jenkins mit Docker-Compose. Weitere Informationen zur Installation von Jenkins mit Docker-Compose finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Detaillierter Prozess der Installation von Jenkins-2.249.3-1.1 mit Docker
  • Ein ausführliches Tutorial zur Installation von Jenkins auf Docker für Anfänger
  • So installieren Sie Jenkins mit Docker
  • Detailliertes Tutorial zur Installation des Jenkins-Containers in einer Docker-Umgebung
  • Installieren Sie Jenkins mit Docker und lösen Sie das Problem des anfänglichen Plugin-Installationsfehlers
  • Beispielcode zur Installation von Jenkins mit Docker
  • Docker-Bereitstellungs- und Installationsschritte für Jenkins

<<:  Das Problem zweier Anfragen, wenn der src-Attributwert des img-Tags leer ist (Nicht-IE-Browser)

>>:  Verwenden von Iframe-Techniken, um Ideen und Beispielcode für die QQ-Implementierung von Besuchern zu erhalten

Artikel empfehlen

Mounten Sie die Festplatte in einem Verzeichnis unter Ubuntu 18.04

Einführung In diesem Artikel wird beschrieben, wi...

Der vollständige Code der im Uniapp-Applet enthaltenen Radardiagrammkomponente

Effektbild: Der Implementierungscode lautet wie f...

Einführung in die MySQL-Optimierung für die Unternehmensproduktion

Im Vergleich zu anderen großen Datenbanken wie Or...

Miniprogramm zur Implementierung einer einfachen Listenfunktion

In diesem Artikelbeispiel wird der spezifische Co...

Einige Front-End-Praxiszusammenfassungen der neuen Homepage von Alipay

Natürlich fließen auch einige persönliche Erfahrun...

Detaillierte Erläuterung der MySQL-Benutzervariablen und Set-Anweisungsbeispiele

Inhaltsverzeichnis 1 Einführung in Benutzervariab...

Detaillierte Erklärung der CSS-Stylesheets und des Formatlayouts

Stilvorlagen CSS (Cascading Style Sheets) wird zu...

Vue implementiert eine Wettervorhersagefunktion

In diesem Artikel wird der spezifische Code von V...

Codebeispiele für den Import und Export von Docker-Images

Import und Export von Docker-Images Dieser Artike...

So konfigurieren Sie Nginx zur Unterstützung von IPv6 unter Linux

1. Überprüfen Sie, ob das vorhandene Nginx IPv6 u...