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

js, um einen einfachen Front-End-Paging-Effekt zu erzielen

Einige Projekte haben ein relativ einfaches Gesch...

Zusammenfassung der Wissenspunkte zur MySQL-Architektur

1. Datenbanken und Datenbankinstanzen Beim Studiu...

Methode zum dynamischen Laden von Geojson basierend auf Vue+Openlayer

Laden eines oder mehrerer Features <Vorlage>...

So aktualisieren Sie v-for in Vue

Tipps: Die Methode zur Array-Änderung führt zur A...

Stellen Sie einen Varnish-Cache-Proxyserver basierend auf Centos7 bereit

1. Lackübersicht 1. Einführung in Varnish Varnish...

SQL-Übung: Produktkategorie-Datenoperation in der Online-Shopping-Datenbank

Datenbank für Online-Einkaufszentren - Produktkat...

HTML-Tabellen-Markup-Tutorial (43): VALIGN-Attribut der Tabellenüberschrift

In vertikaler Richtung können Sie die Ausrichtung...

So deaktivieren Sie die Klartextanzeige und die Schnelllöschfunktion von IE10

IE10 bietet eine Schaltfläche zum schnellen Lösche...

JS ES: Neue Funktion zur variablen Entkopplungszuweisung

Inhaltsverzeichnis 1. Entkoppelte Zuweisung von A...

Globale Aufrufimplementierung von Vue2.x Picker auf mobilen Endgeräten

Inhaltsverzeichnis Was ist die Picker-Komponente ...