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

Navicat-Verbindung MySQL Fehlerbeschreibungsanalyse

Inhaltsverzeichnis Umfeld Version der virtuellen ...

So verwenden Sie die MySQL-Indexzusammenführung

Die Indexzusammenführung ist ein intelligenter Al...

Analyse von Multithread-Programmierbeispielen unter Linux

1 Einleitung Die Thread-Technologie wurde bereits...

Aufbau einer Docker+K8S-Clusterumgebung und verteilte Anwendungsbereitstellung

1. Docker installieren yum installiere Docker #St...

Beispielcode für horizontalen Linienstil „hr“

Code kopieren Der Code lautet wie folgt: <hr S...

So unterscheiden Sie MySQLs innodb_flush_log_at_trx_commit und sync_binlog

Die beiden Parameter innodb_flush_log_at_trx_comm...

Installieren von MySQL 8.0.12 basierend auf Windows

Dieses Tutorial ist nur auf Windows-Systemen anwe...

Verwenden Sie JS, um Dateien zu bearbeiten (FileReader liest --node's fs)

Inhaltsverzeichnis JS liest Datei FileReader doku...

So fragen Sie Datum und Uhrzeit in MySQL ab

Vorwort: Bei der Projektentwicklung werden in ein...

Schritte zum Einrichten einer HTTPS-Website basierend auf Nginx

Inhaltsverzeichnis Vorwort: Verschlüsselungsalgor...

Detaillierte Erklärung zur Verwendung von Join in Mysql

In den vorherigen Kapiteln haben wir gelernt, wie...

Erkunden Sie die gängigen VMware ESXI CLI-Befehle

Inhaltsverzeichnis 【Allgemeine Befehle】 [Zusammen...

2017 neueste Version der Windows-Installation MySQL-Tutorial

1. Laden Sie zunächst die neueste Version von MyS...

Spezifische Verwendung des Ausnahmefilters Exceptionfilter in nestjs

Wenn wir über den Ausnahmefilter von Nestjs sprec...

Was ist COLLATE in MYSQL?

Vorwort Führen Sie den Befehl show create table &...