Heim >Backend-Entwicklung >Golang >Gitlab stellt Golang bereit

Gitlab stellt Golang bereit

PHPz
PHPzOriginal
2023-05-21 16:39:08713Durchsuche

1. Hintergrund

Gitlab ist ein Open-Source-Versionskontrollsystem, das Code-Warehouse-Verwaltung, Versionskontrolle, kollaborative Entwicklung und andere Funktionen realisieren kann. Golang ist eine kompilierte Hochleistungssprache, die aufgrund ihrer hervorragenden Parallelitätsleistung und hohen Entwicklungseffizienz große Aufmerksamkeit bei Entwicklern auf sich gezogen hat.

Bei der tatsächlichen Verwendung müssen wir möglicherweise Golang-Anwendungen für die automatisierte Erstellung und kontinuierliche Integration in Gitlab bereitstellen. In diesem Artikel wird erläutert, wie Golang-Anwendungen auf Gitlab bereitgestellt werden.

2. Vorbereitung

1. Installieren Sie Gitlab

Zuerst müssen Sie Gitlab installieren. Zur Installation können Sie sich das Installations-Tutorial ansehen, das auf der offiziellen Website von Gitlab bereitgestellt wird.

2. Installieren Sie golang

Zweitens müssen Sie golang installieren. Sie können das neueste Installationspaket zur Installation direkt herunterladen. Nach Abschluss der Installation müssen Sie auch Umgebungsvariablen festlegen.

3. Erstellen Sie ein Golang-Projekt

1. Erstellen Sie ein neues Golang-Projekt in Gitlab und wählen Sie „Projekt erstellen“. Geben Sie den Projektnamen, die Beschreibung und andere Informationen ein, wählen Sie die Standardeinstellungen aus. Nach erfolgreicher Erstellung wird eine Git-Warehouse-Adresse angezeigt.

2. Initialisieren Sie das Projekt. Geben Sie das lokale Golang-Projektverzeichnis ein und führen Sie den folgenden Befehl aus, um das Projekt in einem Git-Warehouse zu initialisieren:

git init
Gitlab-Lager:

git remote add origin [Gitlab 仓库地址]

Nachdem die Einreichung abgeschlossen ist, haben wir das Golang-Projekt erfolgreich in das Gitlab-Lager hochgeladen.

3. Konfigurieren Sie die Datei gitlab-ci.yml

1. Erstellen Sie die Datei

Erstellen Sie eine .gitlab-ci.yml-Datei im Stammverzeichnis des Golang-Projekts.

2. Ändern Sie die Konfiguration

Schreiben Sie die folgende Konfiguration in die Datei .gitlab-ci.yml:

git add .
git commit -m "Initial commit"
git push -u origin master

Der xxx in der Konfigurationsdatei muss durch Ihre eigene Gitlab-Warehouse-Adresse ersetzt werden.

Unter anderem besteht der Befehl in before_script darin, das Glide-Abhängigkeitstool im Docker-Container zu installieren.

Build und Deployment repräsentieren die beiden Phasen von Build und Deployment. Die Build-Phase wird hauptsächlich zum Erstellen von Docker-Images verwendet, und die Bereitstellungsphase dient hauptsächlich zum Bereitstellen der erstellten Docker-Images auf dem Server.

4. Golang-Anwendungen erstellen und bereitstellen

Führen Sie den folgenden Befehl im Projektstammverzeichnis aus, um das Image zu erstellen:

image: docker/compose:1.18.0

services:
  - docker:dind

before_script:
  - apk update && apk add --no-cache curl git
  - curl https://glide.sh/get | sh

stages:
  - build
  - deploy

build:
  stage: build
  script:
    - docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN registry.gitlab.com
    - docker pull registry.gitlab.com/xxxxxxxxx/golang:latest || true
    - docker build --cache-from registry.gitlab.com/xxxxxxxxx/golang:latest -t registry.gitlab.com/xxxxxxxxx/golang:$CI_BUILD_TAG --pull .
    - docker push registry.gitlab.com/xxxxxxxxx/golang:$CI_BUILD_TAG

deploy:
  stage: deploy
  script:
    - docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN registry.gitlab.com
    - docker pull registry.gitlab.com/xxxxxxxxx/golang:$CI_BUILD_TAG || true
    - docker run -d --name appname -p 8080:8080 registry.gitlab.com/xxxxxxxxx/golang:$CI_BUILD_TAG

2. Führen Sie den folgenden Befehl aus, um das bereitzustellen Docker-Image auf dem Server Oben:

docker build -t golang-app .

Zu diesem Zeitpunkt haben wir die Golang-Anwendung erfolgreich auf Gitlab bereitgestellt. Durch die CD/CI-Funktion von Gitlab können wir automatisierte Konstruktion und kontinuierliche Integration realisieren, die Entwicklungseffizienz verbessern sowie bequem und schnell bereitstellen und aktualisieren.

Das obige ist der detaillierte Inhalt vonGitlab stellt Golang bereit. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Golang-InstallationsprotokollNächster Artikel:Golang-Installationsprotokoll