So stellen Sie Gitlab mit Docker-Compose bereit

So stellen Sie Gitlab mit Docker-Compose bereit

Docker-Compose stellt Gitlab bereit

1. Docker installieren

Installieren Sie die erforderlichen Tools

Kopieren Sie den Code wie folgt:
[root@vm_10_14_centos ~]# yum -y installiere yum-utils device-mapper-persistent-data lvm2

Docker-ce-Imagequelle hinzufügen und installieren

[root@vm_10_14_centos ~]# yum-config-manager --add-repo
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
[root@vm_10_14_centos ~]# yum makecache fast
[root@vm_10_14_centos ~]# yum -y installiere docker-ce[root@gitlab ~]# yum makecache fast
[root@vm_10_14_centos ~]# yum -y installiere Docker-ce
[root@vm_10_14_centos ~]# systemctl starte Docker
[root@vm_10_14_centos ~]# systemctl Docker aktivieren
Symlink von /etc/systemd/system/multi-user.target.wants/docker.service nach /usr/lib/systemd/system/docker.service erstellt.

Docker-Image-Beschleunigung hinzufügen

[root@vm_10_14_centos ~]# vim /etc/docker/daemon.json
{
"Registrierungsspiegel": ["https://9w1hl6qt.mirror.aliyuncs.com"]
}
[root@vm_10_14_centos ~]# systemctl daemon-reload
[root@vm_10_14_centos ~]# systemctl docker neu starten
[root@vm_10_14_centos ~]# rpm -qa Docker
[root@vm_10_14_centos ~]# rpm -qa docker-ce
docker-ce-18.09.0-3.el7.x86_64
[root@vm_10_14_centos ~]# docker --version
Docker-Version 18.09.0, Build 4d60db4
[root@vm_10_14_centos ~]# Docker-Version
Kunde:
 Version: 18.09.0
 API-Version: 1.39
 Go-Version: go1.10.4
 Git-Commit: 4d60db4
 Erstellt: Mittwoch, 7. November 2018, 00:48:22 Uhr
 Betriebssystem/Architektur: linux/amd64
 Experimentell: falsch

Server: Docker Engine - Community
 Motor:
 Version: 18.09.0
 API-Version: 1.39 (Mindestversion 1.12)
 Go-Version: go1.10.4
 Git-Commit: 4d60db4
 Erstellt: Mittwoch, 7. November 2018, 00:19:08 Uhr
 Betriebssystem/Architektur: linux/amd64
 Experimentell: falsch

2. Installieren Sie Docker-Compose

Laden Sie die Docker-Compose-Binärdatei herunter und fügen Sie Ausführungsberechtigungen hinzu

[root@vm_10_14_centos ~]# curl -L https://github.com/docker/compose/releases/download/1.23.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
 % Gesamt % Empfangen % Xferd Durchschnittliche Geschwindigkeit Zeit Zeit Zeit Aktuell
         Dload Upload Gesamtverbrauch Verbleibende Geschwindigkeit
100 617 0 617 0 0 959 0 --:--:-- --:--:-- --:--:-- 958
100 11,2 Mio. 100 11,2 Mio. 0 0 1824 k 0 0:00:06 0:00:06 --:--:-- 2422 k
[root@vm_10_14_centos ~]# chmod +x /usr/local/bin/docker-compose
[root@vm_10_14_centos ~]# docker-compose --version
Docker-Compose-Version 1.23.2, Build 1110ad01

3. Installieren Sie Gitlab

(1) Bearbeiten Sie die YML-Datei von Docker-Compose

[root@vm_10_14_centos ~]# mkdir gitlab
[root@vm_10_14_centos ~]# cd gitlab/
[root@vm_10_14_centos gitlab]# vim docker-compose.yml 
Version: '2'
Leistungen:
 gitlab:
  Bild: „twang2218/gitlab-ce-zh:11.1.4“
  Containername: "gitlab"
  Neustart: sofern nicht gestoppt
  privilegiert: wahr
  Hostname: „gitlab“
  Umfeld:
  TZ: „Asien/Shanghai“
  GITLAB_OMNIBUS_CONFIG: |
   externe_URL 'http://129.204.133.242'
   gitlab_rails['Zeitzone'] = 'Asien/Shanghai'
   gitlab_rails['smtp_enable'] = wahr
   gitlab_rails['smtp_address'] = "smtp.aliyun.com"
   gitlab_rails['smtp_port'] = 465
   gitlab_rails['smtp_user_name'] = "[email protected]" #Verwenden Sie Ihr eigenes Aliyun-Postfachgitlab_rails['smtp_password'] = "axbc1kof"
   gitlab_rails['smtp_domain'] = "aliyun.com"
   gitlab_rails['smtp_authentication'] = "Anmelden"
   gitlab_rails['smtp_enable_starttls_auto'] = wahr
   gitlab_rails['smtp_tls'] = wahr
   gitlab_rails['gitlab_email_from'] = '[email protected]'
   gitlab_rails['gitlab_shell_ssh_port'] = 22
  Häfen:
  - „80:80“
  - '443:443'
  - '22:22'
  Bände:
  - /opt/gitlab/config:/etc/gitlab
  - /opt/gitlab/data:/var/opt/gitlab
  - /opt/gitlab/logs:/var/log/gitlab

(2) Erstellen Sie relevante Verzeichnisse

[root@vm_10_14_centos gitlab]# mkdir /opt/gitlab/{config,data,logs} -p
[root@vm_10_14_centos gitlab]# ls -l /opt/gitlab/
insgesamt 12
drwxr-xr-x 2 root root 4096 Dez 8 11:35 config
drwxr-xr-x 2 root root 4096 Dez 8 11:35 Daten
drwxr-xr-x 2 root root 4096 Dez 8 11:35 Protokolle

(3) Ziehen Sie die chinesische Version des Gitlab-Image

[root@vm_10_14_centos gitlab]# docker pull twang2218/gitlab-ce-zh:11.1.4
11.1.4: Abrufen von twang2218/gitlab-ce-zh
8ee29e426c26: Ziehen abgeschlossen 
6e83b260b73b: Ziehen abgeschlossen 
e26b65fd1143: Ziehen abgeschlossen 
40dca07f8222: Ziehen abgeschlossen 
b420ae9e10b3: Ziehen abgeschlossen 
a218309dd589: Ziehen abgeschlossen 
5c60fd7ba0ce: Ziehen abgeschlossen 
659c2144b5a3: Ziehen abgeschlossen 
8289bbac0d0e: Pull abgeschlossen 
31bbd150e8a7: Ziehen abgeschlossen 
9114e78243fa: Ziehen abgeschlossen 
0b97fa2153bc: Pull abgeschlossen 
308c7e15be6a: Ziehen abgeschlossen 
b7f31b8e487d: Ziehen abgeschlossen 
cbbb6dec5000: Ziehen abgeschlossen 
0241c9ad6a16: Ziehen abgeschlossen 
7fa6f0b53edd: Ziehen abgeschlossen 
1c2861e152b2: Ziehen abgeschlossen 
0536f3466f66: Ziehen abgeschlossen 
Zusammenfassung: sha256:3c2372e3285e6d6933ddebb5ee3ae0c4bbf7cb235084e54d33d7f0ddf4813c4a
Status: Neueres Image für twang2218/gitlab-ce-zh:11.1.4 heruntergeladen
[root@vm_10_14_centos gitlab]# Docker-Image ls
REPOSITORY TAG BILD ID ERSTELLT GRÖSSE
twang2218/gitlab-ce-zh 11.1.4 1935cc9f8798 vor 4 Monaten 1,61 GB

(4) Starten Sie den Gitlab-Container

[root@vm_10_14_centos gitlab]# docker-compose up -d
Netzwerk „gitlab_default“ mit dem Standardtreiber erstellen
Gitlab wird erstellt ... Fehler

FEHLER: für gitlab. Dienst gitlab kann nicht gestartet werden: b'driver konnte externe Konnektivität auf Endpunkt gitlab nicht programmieren (9308ca74b8491c556263eac9fb9b0abcb25258d9e2df5733fc4d9143d6b18dcc): Fehler beim Starten des Userland-Proxys: listen tcp 0.0.0.0:22: bind: Adresse wird bereits verwendet'

FEHLER: für gitlab. Dienst gitlab kann nicht gestartet werden: b'driver konnte externe Konnektivität auf Endpunkt gitlab nicht programmieren (9308ca74b8491c556263eac9fb9b0abcb25258d9e2df5733fc4d9143d6b18dcc): Fehler beim Starten des Userland-Proxys: listen tcp 0.0.0.0:22: bind: Adresse wird bereits verwendet'
FEHLER: Beim Hochladen des Projekts sind Fehler aufgetreten.
 
[root@vm_10_14_centos gitlab]# vim /etc/ssh/sshd_config 
[root@vm_10_14_centos gitlab]# systemctl sshd neu starten
[root@vm_10_14_centos gitlab]# netstat -tulnp |grep 22
tcp 0 0 0.0.0.0:60022 0.0.0.0:* LISTEN 4044/sshd

Hierbei ist zu beachten, dass der Gitlab-Container Port 22 verwenden muss und nicht mit dem Host in Konflikt geraten darf. Daher müssen Sie den Abhörport des SSHD-Dienstes des Hosts ändern.

[root@vm_10_14_centos gitlab]# docker-compose ps
Name Befehl Status Ports
------------------------------------------------------------------------------------------------
------------------------
gitlab /assets/wrapper Aktiv (fehlerhaft) 0.0.0.0:22->22/tcp, 0.0.0.0:443-
>443/tcp, 0.0.0.0:80->80/tcp

(5) Gitlab-Einstellungen starten

[root@vm_10_14_centos gitlab]# chmod +x /etc/rc.local
[root@vm_10_14_centos gitlab]# ls -l /etc/rc.local
lrwxrwxrwx. 1 root root 13. Juli 7 16:43 /etc/rc.local -> rc.d/rc.local
[root@vm_10_14_centos gitlab]# echo "cd /root/gitlab && docker-compose up -d" >>
/etc/rc.local
[root@gitlab gitlab]# tail -1 /etc/rc.local
cd /root/gitlab und docker-compose up -d

(6) GitLab-Verwaltungsschnittstelle

Adresse: http://129.204.133.242

Konto: root

Passwort: Bei der ersten Anmeldung festlegen



Das könnte Sie auch interessieren:
  • Erläutern Sie die Bereitstellung und Konfiguration des Clickhouse Docker-Clusters anhand von Beispielen.
  • Detaillierte Erläuterung des Beispiels eines PHP-Projekts zur Docker-Compose-Bereitstellung
  • Docker-Compose - Bereitstellung der chinesischen Gitlab-Version per Mausklick - Methodenschritte
  • Eine kurze Analyse des Problems, dass MySQL bei der Bereitstellung mit Docker-Compose nicht zugänglich ist
  • Tutorial zum schnellen Bereitstellen von Clickhouse mit Docker-Compose

<<:  JavaScript implementiert die Drag-Slider-Puzzle-Verifizierungsfunktion (html5, Canvas)

>>:  Grafisches Tutorial zur Installation der grünen Version von MySql 5.6.36 (64-Bit)

Artikel empfehlen

Tutorial zur HTML-Tabellenauszeichnung (10): Zell-Padding-Attribut CELLPADDING

Unter Zellenabstand versteht man den Abstand zwis...

Detaillierte Erklärung der markierten Union-Typen in TypeScript 2.0

Inhaltsverzeichnis Erstellen von Zahlungsmethoden...

Docker5 - Vollfunktionaler Hafenlager-Bauprozess

Harbor ist ein Registry-Server auf Unternehmenseb...

Installationshandbuch für VMware Workstation 15 Pro (für Anfänger)

01. VMware Workstation Pro 15 herunterladen Herun...

Detaillierte Erklärung der MySQL information_schema-Datenbank

1. Übersicht Die Datenbank information_schema ist...

Analysieren Sie die Verwendung und Prinzipien von Vues Bereitstellung und Injektion

Lassen Sie uns zunächst darüber sprechen, warum w...

Das Vue-Projekt implementiert einen grafischen Überprüfungscode

In diesem Artikelbeispiel wird der spezifische Co...

So erstellen Sie eine Vue3-Desktopanwendung

In diesem Artikel sehen wir uns an, wie man mit V...

Lösung für MySQL-Fehler beim Ändern des SQL-Modus

Inhaltsverzeichnis Ein Mord verursacht durch ERR ...

Lösung für die leere Seite nach einem vue.js-gepackten Projekt

Ich glaube, dass viele Partner, die gerade erst m...

Docker verwendet Busybox, um ein Basis-Image zu erstellen

Die erste Zeile eines Docker-Images beginnt mit e...

Dreißig HTML-Codierungsrichtlinien für Anfänger

1. HTML-Tags immer schließen Im Quellcode der vor...

Detaillierte Erklärung der Verwendung des Linux-Befehls nslookup

[Wer ist nslookup?] 】 Der Befehl nslookup ist ein...