So erstellen Sie ein CentOS-Basisimage

So erstellen Sie ein CentOS-Basisimage

Vorwort

Derzeit ist das von meiner Firma verwendete Betriebssystem ausschließlich CentOS 7.4, und natürlich werden auch die Anwendungen auf CentOS bereitgestellt. Wenn Docker für die Bereitstellung verwendet wird, ist es natürlich, ein eigenes Anwendungsimage basierend auf dem CentOS-Image zu erstellen. Sie können jedoch auch ein grundlegendes Framework-Image zwischen dem CentOS-Basisimage und dem Anwendungsimage erstellen, z. B. ein grundlegendes JDK-Image, ein auf einer Python-Umgebung basierendes Image usw.; Ich glaube, jeder hat auch schon einmal festgestellt, dass nach dem Erstellen eines Images die chinesische Ausgabe beim Bereitstellen der Anwendung verstümmelt ist. Die Protokollzeit zeigt die UTC-Zeit an, die 8 Stunden unter der Peking-Zeit liegt. Wenn Sie sehen möchten, ob ein bestimmter Prozess ausgeführt wird, stellen Sie fest, dass die Befehle Telnet, PS und Netstat nicht verfügbar sind. Wenn Sie eine Datei bearbeiten möchten, stellen Sie fest, dass auch der Befehl Vim nicht verfügbar ist. Heute werden wir uns ansehen, wie ein erweitertes CentOS-Image basierend auf dem CentOS-Image erstellt wird.

Erstellen eines Spiegelrepositorys

Bevor Sie Ihr eigenes Image erstellen, benötigen Sie einen Ort, an dem Sie Ihr Image speichern können, damit Sie es später direkt verwenden können. Es gibt zwei Möglichkeiten: Die erste besteht darin, es auf Ihrem eigenen Computer zu erstellen und es dann mit dem Befehl docker save -o xxx.tar.gz xxx-image:v1.0 auf Ihre eigene Cloud-Festplatte hochzuladen. Wenn Sie es verwenden, laden Sie es auf Ihre lokale Festplatte herunter und verwenden Sie dann docker load -i xxx.tar.gz . Diese Methode ist in Ordnung, aber umständlicher (Verpacken, Hoch- und Herunterladen und Suchen des Verzeichnisses beim Laden). Die zweite besteht darin, ein eigenes Docker-Image-Register zu erstellen. Für das lokal erstellte Image müssen Sie es nur neu taggen, und Docker Push kann es abschließen. Beim Herunterladen müssen Sie nur „docker pull“ ausführen, und alles kann über die Befehlszeile erledigt werden. Allein der Gedanke daran ist mir etwas unangenehm.

Nachdem wir so viel gesagt haben, schauen wir uns an, wie Sie Ihr eigenes Image-Warehouse erstellen können. (In diesem Artikel verwenden wir nur das Warehouse von Alibaba Cloud und erstellen unseren eigenen Namespace.) Natürlich können Sie auch selbst einen Cloud-Host beantragen und dann einen privaten Server erstellen.

Melden Sie sich zunächst bei Alibaba Cloud an und suchen Sie dann vom Dienst aus den Speicherort des Container-Image-Dienstes, wie in der folgenden Abbildung dargestellt:

Klicken Sie auf „Container Mirror Service“, um die Schnittstelle zur Erstellung eines Mirror Warehouse wie unten gezeigt aufzurufen.

Klicken Sie auf „Erstellen“, um die Schnittstelle zur Lagererstellung aufzurufen

Nachdem Sie die Informationen eingegeben haben, klicken Sie auf Weiter, um auszuwählen, wie das Bild hochgeladen werden soll.

Denn meine Anforderung besteht darin, aus einem lokalen Lager zu bauen, aber ich denke, dass der Bau eines lokalen Lagers die flexibelste Möglichkeit ist;

Nachdem Sie den Image-Speicherort erstellt haben, können Sie lokal eine Docker-Datei erstellen, um Ihr eigenes Image zu erstellen.

Erstellen Sie ein Image der erweiterten CentOS-Version

1. Erstellen Sie zunächst eine Dockerfile-Datei und fügen Sie den folgenden Inhalt in die Datei ein

VON centos
WARTUNGSBEAUFTRAGTER terry.king "[email protected]"

# Definieren Sie den Zeitzonenparameter ENV TZ=Asia/Shanghai
RUN ls -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo '$TZ' > /etc/timezone
# Stellen Sie die Kodierung ein RUN localedef -c -f UTF-8 -i zh_CN zh_CN.utf8
ENV LC_ALL "zh_CN.UTF-8"

# Installieren Sie grundlegende Yum-Pakete. RUN yum install -y gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel patch net-tools iproute telnet bind-utils wget kde-l10n-Chinese glibc-common

2. Melden Sie sich bei Alibaba Cloud Docker Registry an

sudo docker login --username=Ihr Alibaba Cloud-Konto registry.cn-shenzhen.aliyuncs.com

Der zum Anmelden verwendete Benutzername ist der vollständige Name des Alibaba Cloud-Kontos und das Kennwort ist das bei der Aktivierung des Dienstes festgelegte Kennwort.

Sie können Ihr Anmeldekennwort auf der Homepage der Produktkonsole ändern. Dies ist die zweite Schaltfläche zum Erstellen eines Spiegelrepositorys. Legen Sie links das Registrierungs-Anmeldekennwort fest.

3. Erstellen Sie das Image und übertragen Sie es in die Registry

$ docker build -t terrylmay/centos .
$ Docker-Tag terrylmay/centos registry.cn-shenzhen.aliyuncs.com/terrylmay/centos:[Image-Versionsnummer]
$ docker push registry.cn-shenzhen.aliyuncs.com/terrylmay/centos:[Image-Versionsnummer]

Die Standardversionsnummer des Bildes ist die neueste

Zusammenfassen

Auf diese Weise können eine Reihe der im Vorwort erwähnten Probleme beim Erstellen eines Anwendungsimages gelöst werden. Es ist praktisch für Sie, schnell Ihr eigenes Anwendungsimage zu erstellen.

Das könnte Sie auch interessieren:
  • CentOS 6.5 erstellt ein Docker-Image, das sich über SSH anmelden kann

<<:  Entwickeln Sie Beispielcode für einen Taschenrechner mit nativem JavaScript

>>:  Zusammenfassung der Installation der grünen Version von MySQL5 unter Windows (empfohlen)

Artikel empfehlen

Zusammenfassung der Methoden zum Einfügen von Videos in HTML-Seiten

Wenn Sie nun das Video-Tag auf einer Seite verwen...

Eine Minute, um die Laufruhe von HTML+Vue+Element-UI zu erleben

Technik-Fan html-Webseite, müssen Sie wissen Von ...

Was ist COLLATE in MYSQL?

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

Lösung für großen Zeilenabstand (5 Pixel mehr im IE)

Code kopieren Der Code lautet wie folgt: li {Brei...

Womit kann ich dich, meinen Tisch, retten (Haiyu-Blog)

Tabellen spielten einst eine sehr wichtige Rolle ...

Ein netter HTML-Druckcode unterstützt das Umblättern

ylbtech_html_drucken HTML-Druckcode, unterstützt S...

Die Einhandregel von WEB 2.0

<br />Mein vorheriger Artikel über CSS wurde...

Mit CSS3 lässt sich ein umdrehbarer Hover-Effekt erzielen

CSS3 implementiert einen umdrehbaren Hover-Effekt...

Zabbix überwacht den Prozess der Linux-Systemdienste

Zabbix erkennt automatisch Regeln zur Überwachung...

So implementieren Sie https mit Nginx und OpenSSL

Wenn die Serverdaten nicht verschlüsselt und mit ...