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

Zwei Verwendungen von iFrame-Tags in HTML

Ich habe kürzlich an einem Projekt gearbeitet – B...

Vorteile und Prinzipien der MySQL-Replikation im Detail erklärt

Bei der Replikation werden die DDL- und DML-Opera...

Detailliertes Tutorial zur Installation von Nginx auf CentOS8 (Bild und Text)

Nginx, ausgesprochen „Engine x“, ist ein Open Sou...

Tipps zum Listenaufbau für Website-Wartungsseiten

Und oft ist es für Wartungsarbeiten erforderlich, ...

Was ist eine HTML-Datei? So öffnen Sie eine HTML-Datei

HTML steht für Hypertext Markup Language. Heutzut...

Nativer JS-Musikplayer

In diesem Artikelbeispiel wird der spezifische JS...

Zusammenfassung der Verwendung von Datetime und Timestamp in MySQL

Inhaltsverzeichnis 1. Wie wird die aktuelle Uhrze...

Mehrere Möglichkeiten, Bilder in React-Projekte einzuführen

Der img-Tag führt das Bild ein Da React die Seite...

Das mobile Vue-Terminal realisiert den Finger-Gleiteffekt

In diesem Artikelbeispiel wird der spezifische Co...

So kopieren Sie eine MySQL-Tabelle

Inhaltsverzeichnis 1.mysqldump Ausführungsprozess...