Vorwort In diesem Artikel werden einige Docker-Compose-Konfigurationen vorgestellt. Sie können sie als Referenz verwenden, um Ihren eigenen Satz von Docker-basierten Entwicklungs-/Produktionsumgebungskonfigurationen zusammenzufassen. Werfen wir einen Blick auf die ausführliche Einführung. Installieren Sie Docker und Docker-Compose. Docker installieren curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun Installieren Sie Docker-Compose sudo curl -L https://github.com/docker/compose/releases/download/1.23.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose Erstellen Sie ein dediziertes Netzwerk Verwenden Sie das Docker-Netzwerk, um Ihr eigenes dediziertes gemeinsames Netzwerk me_gateway zu erstellen, damit die Docker-Software aufeinander zugreifen kann Docker-Netzwerk erstellen me_gateway Docker-Compose, Bereitstellung von Traefik
docker-compose.yml Dies ist eine Beispielkonfiguration von docker-compose.yml mit traefik Darunter befindet sich die gemountete Datei ./traefik.toml, deren Konfiguration. Die gemountete acme.json ist die Konfiguration von Let’s Encrypt Version: '3' Version: '3' Leistungen: me_traefik: Bild: traefik:1.7.4 Containername: me_traefik Häfen: - „80:80“ - '443:443' - „8090:8090“ Bände: – /var/run/docker.sock:/var/run/docker.sock - ./traefik.toml:/traefik.toml - ./acme.json:/acme.json Netzwerke: - Webgateway Netzwerke: Webgateway: extern: Name: me_gateway traefik.toml Detaillierte Konfigurationsbeschreibung: http://docs.traefik.cn/toml#acme-lets-encrypt-configuration Das Folgende ist ein Beispiel. Wenn Sie beim Konfigurieren der Überprüfung auf Probleme stoßen, können Sie sich auf die folgende Konfiguration oder die Kommentare dieses Artikels beziehen ################################################################ # Globale Konfiguration ################################################################ # Debug-Modus aktivieren # # Optional # Standardmäßig: false # debug = falsch # Protokollebene # # Optional # Standard: "FEHLER" # logLevel = "FEHLER" # Einstiegspunkte, die von Frontends verwendet werden sollen, die keinen Einstiegspunkt angeben. # Jedes Frontend kann seine eigenen Einstiegspunkte angeben. # # Optional # Standard: ["http"] # Standard-Einstiegspunkte = ["http","https"] ################################################################ # Entrypoints-Konfiguration ################################################################ # Einstiegspunktdefinition # # Optional # Standard: # So aktivieren Sie die Basisauthentifizierung für einen Einstiegspunkt # Verwenden Sie 2 Sätze Benutzername/Passwort: test:test und test2:test2 # Passwörter können mit MD5, SHA1 oder BCrypt verschlüsselt werden: Sie können htpasswd verwenden, um diese Benutzernamen und Passwörter zu generieren. # [Einstiegspunkte] # [Einstiegspunkte.http] # Adresse = ":80" # [entryPoints.http.auth.basic] # Benutzer = ["Test:$apr1$H6uskkkW$IgXLP6ewTrSuBkTrqE8wj/", "Test2:$apr1$d9hr9HBB$4HxwgUir3HP4EsggP/QNo0"] # # So aktivieren Sie die Digest-Authentifizierung für einen Einstiegspunkt # Verwenden Sie 2 Sätze Benutzername/Domäne/Passwort: test:traefik:test und test2:traefik:test2 # Sie können htdigest verwenden, um diese Benutzernamen/Domänen/Passwörter [Einstiegspunkte] zu generieren. [Einstiegspunkte.http] Adresse = ":80" #[entryPoints.http.weiterleitung] #entryPoint = "https" [Einstiegspunkte.https] Adresse = ":443" [Eintragspunkte.https.tls] [Eintragspunkte.webentry] Adresse = ":8090" [entryPoints.webentry.auth] [entryPoints.webentry.auth.basic] Benutzer = ["test:$apr1$H6uskkkW$IgXLP6ewTrSuBkTrqE8wj/"] ################################################################ # API- und Dashboard-Konfiguration ################################################################ # API und Dashboard aktivieren [API] Dashboard = wahr Einstiegspunkt = "Web-Eintrag" ################################################################ # Ping-Konfiguration ################################################################ # Ping aktivieren [Klingeln] # Name des zugehörigen Einstiegspunkts # # Optional # Standard: "traefik" # # Einstiegspunkt = "traefik" ################################################################ # Docker-Backend-Konfiguration######################################################################## # Verwenden Sie den Standarddomänennamen. # Kann durch Festlegen des Labels „traefik.domain“ für den Container überschrieben werden. # Docker-Backend-Konfiguration aktivieren [docker] Endpunkt = "unix:///var/run/docker.sock" Domäne = "yimo.link" watch = wahr exposedByDefault = falsch usebindportip = true Schwarmmodus = false Netzwerk = "me_gateway" [Gipfel] E-Mail = "[email protected]" Speicher = "acme.json" Einstiegspunkt = "https" onDemand = false onHostRule = true [acme.httpChallenge] Einstiegspunkt="http" docker-compose stellt Gogs bereit und verwendet traefik, um den Domänennamen zu binden Wenn Sie mit MySQL bauen möchten, können Sie auf diese Konfiguration verweisen docker-compose.yml Version: '3' Leistungen: ich_gogs: Neustart: immer Bild: gogs/gogs Containername: me_gogs Bände: - ./Daten:/Daten - ./logs:/app/gogs/log Häfen: - '10022:22' - '10080:3000' Beschriftungen: - 'traefik.backend=me_gogs' - „traefik.frontend.rule=Host:git.yimo.link“ - „traefik.enable=true“ - „traefik.protocol=http“ - 'traefik.port=3000' Netzwerke: - Webgateway Netzwerke: Webgateway: extern: Name: me_gateway Während der Initialisierung müssen Sie den Domänennamen auf 0.0.0.0 oder git.yimo.link setzen Das heißt, der Eintrag ./data/gogs/conf/app.ini ist DOMAIN = git.yimo.link Docker-Compose - MySQL bereitstellen Es ist zu beachten, dass Sie im selben Netzwerk me_mysql direkt zum Herstellen einer Verbindung verwenden können docker-compose.yml Version: '3' Leistungen: ich_mysql: Bild:mysql:5.7.21 Containername: me_mysql Bände: - ./data:/var/lib/mysql Häfen: - '3306:3306' Umfeld: -MYSQL_ROOT_PASSWORD=root Netzwerke: - Webgateway Netzwerke: Webgateway: extern: Name: me_gateway Zusammenfassen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Das könnte Sie auch interessieren:
|
<<: CentOS7 verwendet RPM-Paket zur Installation von MySQL 5.7.18
>>: JavaScript implementiert Countdown auf Front-End-Webseite
Inhaltsverzeichnis Vorwort Einführung in Dockerfi...
1. PRIMARY KEY hinzufügen (Primärschlüsselindex) ...
Der spezifische Code lautet wie folgt: Paket epoi...
Dieser Artikel beschreibt die Installations- und ...
Physische Struktur eines InnoDB-Index Alle InnoDB...
JSON-Daten werden auf der HTML-Seite angezeigt un...
Experimentelle Umgebung Eine minimal installierte...
1. Zielumgebung Windows 7 64-bit 2. Materialien (...
Inhaltsverzeichnis 1. Verwendung von Pfeilfunktio...
Inhaltsverzeichnis 1. Folgen Sie dem Assistenten,...
TABELLE> <TR> <TD> <TH> <...
Inhaltsverzeichnis 1. js-Speicher 2. Abtretung 3....
1. Rufen Sie die offizielle Docker-Website auf Ge...
mysql.lap Allgemeine Parameterbeschreibung –auto-...
1. Alipay-Methode: Alipay-Methode: Klicken Sie zu...