Verwenden Sie Docker, um ein verteiltes lnmp-Image zu erstellen

Verwenden Sie Docker, um ein verteiltes lnmp-Image zu erstellen

LNMP ist eine dynamische Website-Serverarchitektur, die durch die Kombination von Nginx, Mariadb und PHP unter einem Linux-System erstellt wird. Als nächstes verwenden wir Docker, um ein verteiltes lnmp-Image zu erstellen.

1. Verteilte LNMP-Image-Produktion über Docker

1. Führen Sie Nginx-, MySQL- und PHP-Container aus

#Schalten Sie die Firewall und den Kernschutz aus systemctl disable firewalld
systemctl stoppe Firewall
0

# Prüfen, ob die Ports 3306, 80 und 9000 belegt sind ss -natp | grep 3306
ss -natp | grep 80
ss -natp | grep 9000

#Erstellen Sie ein benutzerdefiniertes Netzwerk Docker-Netzwerk erstellen -d Bridge --Subnet 172.168.184.0/24 --Gateway 172.168.184.1 lnmp

#Führen Sie den Nginx-Container aus docker run -itd --name nginx --network lnmp -p 80:80 --ip 172.168.184.10 nginx:1.12.0

#Führen Sie den MySQL-Container aus docker run -itd --name mysql --network lnmp -p 3306:3306 --ip 172.168.184.20 -e MYSQL_ROOT_PASSWORD=010230 mysql:5.7

#Führen Sie den PHP-Container aus docker run -itd --name phpfpm --network lnmp -p 9000:9000 --ip 172.168.184.30 php:7.1-fpm 

Bildbeschreibung hier einfügen
Bildbeschreibung hier einfügen

Bildbeschreibung hier einfügen

2. Ändern Sie die Nginx-Konfigurationsdatei und die PHP-Datei

docker exec -it nginx /bin/bash
echo -e "server {
    hören Sie 80;
    Servername localhost;
    Standort / {
        root /usr/share/nginx/html;
        index.html index.htmi index.php;
    }
    Fehlerseite 500 502 503 504 /50x.html;
    Standort = /50x.html {
        root /usr/share/nginx/html;
    }
    Standort ~ \.php$ {
        root /usr/share/nginx/html;
        fastcgi_pass 172.168.184.30:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME \$Dokumentstammsatz\$fastcgi_script_name;
        fastcgi_params einschließen;
    }
}" > /etc/nginx/conf.d/default.conf

nginx -s neu laden

docker exec -it phpfpm /bin/bash
mkdir -p /usr/share/nginx/html
echo "<?php
phpinfo();
?>" > /usr/share/nginx/html/index.php 

Bildbeschreibung hier einfügen

Bildbeschreibung hier einfügen

4. Führen Sie Tests durch

Geben Sie localhost/index.php in der virtuellen Maschine ein

Bildbeschreibung hier einfügen

Geben Sie auf diesem Computer 192.168.184.70/index.php ein (die Adresse meiner virtuellen Maschine lautet 192.168.184.70).

Bildbeschreibung hier einfügen

Oben finden Sie Einzelheiten zur Verwendung von Docker zum Erstellen eines verteilten LNMP-Image. Weitere Informationen zu verteilten LNMP-Images von Docker finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM!

Das könnte Sie auch interessieren:
  • So erstellen Sie schnell eine LNMP-Umgebung mit Docker (neueste Version)
  • So stellen Sie die LNMP-Architektur im Docker bereit
  • So erstellen Sie eine lnmp-Umgebung im Docker
  • Verwenden Sie Docker, um eine integrierte Service-LNMP-Umgebung zu erstellen
  • Detaillierte Erläuterung zur Verwendung von Docker zum Erstellen einer LNMP-Umgebung
  • Beispiel für die Kompilierung von LNMP im Docker-Container

<<:  Was bedeutet href=# in einem Link?

>>:  Detailliertes Tutorial zur Installation und Konfiguration der komprimierten Version der MySQL-Datenbank

Artikel empfehlen

Lösen Sie das Problem der Containerverwaltung mit Docker Compose

Im Docker-Design führt ein Container nur eine Anw...

3 verschiedene Möglichkeiten zum Löschen der Optionsoptionen im Auswahltag

Methode 1 Code kopieren Der Code lautet wie folgt:...

Implementierungsbeispiel zum Schließen der Browserabmeldung in Vue

Inhaltsverzeichnis 1. beforeunload-Ereignis 2. Er...

Vue implementiert einen einfachen Rechner

In diesem Artikelbeispiel wird der spezifische Co...

MySQL-Daten einfügen, aktualisieren und löschen Details

Inhaltsverzeichnis 1. Einfügen 2. Aktualisierung ...

Tabellen dynamisch in HTML hinzufügen_PowerNode Java Academy

Ohne weitere Umschweife werde ich den Code direkt...

21 Best Practices zur MySQL-Standardisierung und -Optimierung!

Vorwort Jede gute Angewohnheit ist ein Schatz. Di...

So installieren Sie Mysql5.7 in Centos6

Umfeld Centos 6.6 MySQL 5.7 Installieren Falls da...

Axios storniert Anfragen und vermeidet doppelte Anfragen

Inhaltsverzeichnis Herkunft Status Quo Anfrage ab...

Vue implementiert eine kleine Formularvalidierungsfunktion

In diesem Artikelbeispiel wird der spezifische Co...