Docker erstellt Schritte zur Implementierung von Kubectl-Images

Docker erstellt Schritte zur Implementierung von Kubectl-Images

Wenn der Programmdienst mit k8s bereitgestellt wird, das in gitlab ci/cd integriert ist, wird das Kubeclt-Image im gitlab-ci-Prozess benötigt. Es gibt zwei Möglichkeiten, ein Kubeclt-Image mit Docker zu erstellen

Methode 1 (das Bild ist relativ klein, etwa 45,8 M)

Installieren Sie die ausführbare Datei kubectl mit curl unter Linux

cd /usr/local/bin
curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.20.1/bin/linux/amd64/kubectl
chmod +x ./kubectl

Weitere Einzelheiten finden Sie in der offiziellen Installationsdokumentation.

Erstellen Sie als Nächstes eine neue Dockerfile-Datei im Verzeichnis /usr/local/bin und schreiben Sie den folgenden Inhalt

VON alpin:latest
KOPIEREN Sie kubectl /usr/local/bin/
RUN chmod +x /usr/local/bin/kubectl

Nachdem die Dockerfile-Datei erstellt wurde, führen Sie den Build-Befehl im selben Verzeichnis aus

Docker-Build -t registry.cn-hangzhou.aliyuncs.com/sanchar/kubectl:v1.20.1.

Warten Sie, bis das Image erstellt wurde

Methode 2 (das Bild ist relativ groß, etwa 48,9 M)

Diese Methode ist relativ praktisch, aber der Aufbau ist langsam. Während des Konstruktionsprozesses müssen Sie die ausführbare Kubectl-Datei herunterladen und direkt eine neue Dockerfile-Datei mit folgendem Inhalt erstellen

VON alpin:latest

Führen Sie den Befehl apk add --update -t ​​​​deps curl aus.

Führen Sie curl -L https://storage.googleapis.com/kubernetes-release/release/v1.20.1/bin/linux/amd64/kubectl -o /usr/local/bin/kubectl \ aus.
  && chmod +x /usr/local/bin/kubectl

Führen Sie den Befehl apk del --purge deps \ aus.
  && rm /var/cache/apk/*

Führen Sie den Build-Befehl im selben Verzeichnis aus

Docker-Build -t registry.cn-hangzhou.aliyuncs.com/sanchar/kubectl:v1.20.1.

endlich

1. Testen Sie, ob das erstellte Image normal verwendet werden kann

docker run -it registry.cn-hangzhou.aliyuncs.com/sanchar/kubectl:v1.20.1 kubectl version --client

Der Ausgabeinhalt ist wie folgt, d. h. das erstellte Bild kann normal verwendet werden

Client-Version: version.Info{Major:"1", Minor:"20", GitVersion:"v1.20.1", GitCommit:"c4d752765b3bbac2237bf87cf0b1c2e307844666", GitTreeState:"clean", BuildDate:"2020-12-18T12:09:25Z", GoVersion:"go1.15.5", Compiler:"gc", Plattform:"linux/amd64"}

2. Ziehen Sie das Bild aus der Registrierung

Docker-Pull-Registrierung.cn-hangzhou.aliyuncs.com/sanchar/kubectl:v1.20.1

3. Pushen Sie das Image in die Registry und ersetzen Sie [ImageId] durch die entsprechende Image-ID

Docker-Login --Benutzername=Benutzernameregistry.cn-hangzhou.aliyuncs.com

Docker-Tag [ImageId] registry.cn-hangzhou.aliyuncs.com/sanchar/kubectl:v1.20.1

Docker-Push-Registrierung.cn-hangzhou.aliyuncs.com/sanchar/kubectl:v1.20.1

Dies ist das Ende dieses Artikels über die Implementierungsschritte zum Erstellen eines KUBECTL-Images durch Docker. Weitere relevante Inhalte zum Erstellen eines KUBECTL-Images durch Docker finden Sie in den vorherigen Artikeln von 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:
  • So fügen Sie auf dem Mac automatische Vervollständigungsbefehle für Docker und Kubectl hinzu

<<:  MySQL-Methode zum Generieren von Zufallszahlen, Zeichenfolgen, Daten, Bestätigungscodes und UUIDs

>>:  Fünf Möglichkeiten zum Durchlaufen von Objekten in JavaScript Beispielcode

Artikel empfehlen

Detaillierte Anweisungen zur Installation der MySQL5.7-Datenbank unter Centos7.2

Das MySQL auf dem Server ist in der Version 8.0.1...

Analyse des Implementierungsprinzips von Vue-Anweisungen

Inhaltsverzeichnis 1. Grundlegende Verwendung 2. ...

Eine kurze Analyse der Verwendung von USING und HAVING in MySQL

Dieser Artikel veranschaulicht anhand von Beispie...

Detaillierte Erklärung, wie Node.js mit ES6-Modulen umgeht

Inhaltsverzeichnis 1. Unterschiede zwischen den b...

Der Prozess des Erstellens und Konfigurierens der Git-Umgebung in Docker

Konfigurieren Sie die Git-Umgebung in Docker Bei ...

Uniapps Erfahrung in der Entwicklung kleiner Programme

1. Erstellen Sie ein neues UI-Projekt Zunächst ei...

So überwachen Sie Array-Änderungen in Vue

Inhaltsverzeichnis Vorwort Quellcode Wo beginne i...

Was ist das Basis-Tag und was macht es?

Der <base>-Tag gibt die Standardadresse ode...

HTML-Beispielcode zur Implementierung des Tab-Wechsels

Tab-Umschalten ist auch eine gängige Technologie ...

js implementiert eine Formularvalidierungsfunktion

In diesem Artikelbeispiel wird der spezifische Co...