Heim Backend-Entwicklung PHP-Tutorial Out-of-the-box-Lösungen für Docker Compose, Nginx und MariaDB: Richten Sie schnell eine PHP-Umgebung ein

Out-of-the-box-Lösungen für Docker Compose, Nginx und MariaDB: Richten Sie schnell eine PHP-Umgebung ein

Oct 12, 2023 pm 12:46 PM
docker nginx mariadb

Docker Compose、Nginx和MariaDB的开箱即用解决方案:快速搭建PHP环境

Out-of-the-box-Lösungen für Docker Compose, Nginx und MariaDB: Richten Sie schnell eine PHP-Umgebung ein

Übersicht:

Bei der Entwicklung und Bereitstellung von PHP-Anwendungen ist es entscheidend, eine zuverlässige und einfach einzurichtende zu verwaltende Umgebung. Docker Compose, Nginx und MariaDB können eine Lösung zum schnellen Aufbau einer PHP-Umgebung bieten. In diesem Artikel erfahren Sie, wie Sie mit Docker Compose Container konfigurieren und ausführen, Nginx als Webserver verwenden, MariaDB als Datenbank verwenden und schnell eine PHP-Umgebung erstellen.

1. Docker und Docker Compose installieren:

Zuerst müssen wir Docker und Docker Compose auf dem lokalen Computer installieren. Installationsanleitungen für verschiedene Betriebssysteme finden Sie auf der offiziellen Docker-Website. Überprüfen Sie nach Abschluss der Installation, ob die Installation erfolgreich war. Sie können den folgenden Befehl im Terminal oder in der Eingabeaufforderung eingeben:

docker --version
docker-compose --version
Nach dem Login kopieren

Wenn die Versionsnummer korrekt angezeigt werden kann, bedeutet dies, dass Docker und Docker Compose erfolgreich installiert wurden.

2. Erstellen Sie die Docker Compose-Datei:

Als nächstes müssen wir eine Datei namens docker-compose.yml erstellen und darin unsere Service- und Containerkonfiguration definieren.

version: '3'
services:
  nginx:
    build:
      context: .
      dockerfile: nginx.dockerfile
    ports:
      - 80:80
    depends_on:
      - php
  php:
    build:
      context: .
      dockerfile: php.dockerfile
    volumes:
      - ./src:/var/www/html
  mariadb:
    image: mariadb
    environment:
      - MYSQL_ROOT_PASSWORD=secret
Nach dem Login kopieren

Erklärung:

  • nginx-Dienst: Verwenden Sie den Build-Befehl, um einen Nginx-basierten Container zu erstellen, ordnen Sie Port 80 des lokalen Computers Port 80 des Containers zu und verlassen Sie sich auf den PHP-Dienst.
  • php-Dienst: Verwenden Sie den Build-Befehl, um einen Container zu erstellen, der die erforderlichen PHP-Erweiterungen enthält, und mounten Sie das Verzeichnis ./src des lokalen Computers im Verzeichnis /var/www/html des Containers, um synchrone Aktualisierungen des Codes zu erreichen .
  • mariadb-Dienst: Verwenden Sie das Standard-MariaDB-Docker-Image und setzen Sie das ROOT-Passwort auf „geheim“.

3. Dockerfile und Konfigurationsdateien erstellen:

Als nächstes müssen wir Dockerfile und Konfigurationsdateien erstellen, um beim Erstellen des Images die notwendigen Konfigurationen und Abhängigkeiten bereitzustellen.

  1. nginx.dockerfile:
FROM nginx

COPY nginx.conf /etc/nginx/nginx.conf
COPY default.conf /etc/nginx/conf.d/default.conf
Nach dem Login kopieren

Erklärung: Erstellen Sie ein neues Image aus dem offiziellen Nginx-Image und kopieren Sie dann die lokalen Dateien nginx.conf und default.conf an den entsprechenden Speicherort des Containers.

  1. php.dockerfile:
FROM php:7.4-fpm

RUN apt-get update && apt-get install -y 
    zlib1g-dev 
    libzip-dev 
    && docker-php-ext-install zip pdo_mysql

COPY php.ini /usr/local/etc/php/conf.d/custom.ini
Nach dem Login kopieren

Erläuterung: Erstellen Sie ein neues Image aus dem offiziellen PHP-Image, verwenden Sie dann den Befehl apt-get, um die erforderlichen Abhängigkeiten zu installieren, und installieren Sie die Erweiterungen zip und pdo_mysql über docker-php-ext -install-Befehl. Kopieren Sie abschließend die lokale Datei php.ini in den Container.

  1. nginx.conf:
user  nginx;
worker_processes  auto;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
}

http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;
    
    sendfile        on;
    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;

        root   /var/www/html;
        index  index.php index.html;

        location / {
            try_files $uri $uri/ /index.php?$query_string;
        }

        location ~ .php$ {
            fastcgi_pass   php:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
    }
}
Nach dem Login kopieren

Erläuterung: Dies ist die Konfigurationsdatei von Nginx. Konfiguriert mit Standardprotokollpfaden, Ereigniseinstellungen, http-Einstellungen und einem grundlegenden Serverblock zur Bearbeitung von Anfragen und zur Übergabe der PHP-Verarbeitung an den PHP-Container.

  1. default.conf:
server {
    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ .php$ {
        fastcgi_pass   php:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
}
Nach dem Login kopieren

Erläuterung: Dies ist die Standardkonfigurationsdatei von Nginx. Identisch mit den Serverblockeinstellungen in der Datei nginx.conf.

4. Beginnen Sie mit dem Erstellen und Ausführen des Containers:

Nachdem wir alle Konfigurationsdateien eingerichtet haben, können wir mit dem Erstellen und Ausführen des Containers beginnen. Gehen Sie in einem Terminal oder einer Eingabeaufforderung in das Verzeichnis, in dem sich die Datei docker-compose.yml befindet, und führen Sie den folgenden Befehl aus:

docker-compose up --build
Nach dem Login kopieren

Dieser Befehl startet den Prozess der Erstellung des Images und der Ausführung des Containers. Sobald der Vorgang abgeschlossen ist, sehen Sie, dass der Container ausgeführt wird und die PHP-Anwendung über http://localhost zugänglich ist.

Wenn Sie den Container im Hintergrund ausführen müssen, können Sie den folgenden Befehl verwenden:

docker-compose up -d --build
Nach dem Login kopieren

Dieser Befehl führt den Container im Daemon-Modus aus.

Zusammenfassung:

Mit sofort einsatzbereiten Lösungen für Docker Compose, Nginx und MariaDB können wir schnell eine PHP-Umgebung erstellen und verwalten. Die Portabilitäts- und Containerisierungsvorteile von Docker machen die Entwicklung und Bereitstellung von PHP-Anwendungen einfacher und zuverlässiger. Ich hoffe, dieser Artikel war hilfreich für Sie. Weitere Informationen zu den Codebeispielen finden Sie in den in diesem Artikel erwähnten Konfigurationsdateien.

Das obige ist der detaillierte Inhalt vonOut-of-the-box-Lösungen für Docker Compose, Nginx und MariaDB: Richten Sie schnell eine PHP-Umgebung ein. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So ändern Sie die Docker -Bildquelle in China So ändern Sie die Docker -Bildquelle in China Apr 15, 2025 am 11:30 AM

Sie können zur Quelle der Inlandsspiegel wechseln. Die Schritte sind wie folgt: 1. Bearbeiten Sie die Konfigurationsdatei /etc/docker/daemon.json und fügen Sie die Spiegelquellenadresse hinzu; 2. Starten Sie den Docker Service Sudo SystemCtl Docker neu, um die Download -Geschwindigkeit und -stabilität des Bilddownloads zu verbessern.

So erstellen Sie einen Spiegel in Docker So erstellen Sie einen Spiegel in Docker Apr 15, 2025 am 11:27 AM

Schritte zum Erstellen eines Docker -Images: Schreiben Sie eine Dockerfile, die die Build -Anweisungen enthält. Erstellen Sie das Bild im Terminal mit dem Befehl Docker Build. Markieren Sie das Bild und weisen Sie Namen und Tags mit dem Befehl Docker Tag zu.

So lesen Sie die Docker -Version So lesen Sie die Docker -Version Apr 15, 2025 am 11:51 AM

Um die Docker -Version zu erhalten, können Sie die folgenden Schritte ausführen: Führen Sie den Befehl Docker "Docker --version" aus, um die Client- und Serverversionen anzuzeigen. Für Mac oder Windows können Sie auch Versionsinformationen über die Registerkarte Version der Docker -Desktop -GUI oder das Menü Docker Desktop anzeigen.

So verwenden Sie Docker Desktop So verwenden Sie Docker Desktop Apr 15, 2025 am 11:45 AM

Wie benutze ich Docker Desktop? Docker Desktop ist ein Werkzeug zum Ausführen von Docker -Containern auf lokalen Maschinen. Zu den zu verwendenden Schritten gehören: 1.. Docker Desktop installieren; 2. Start Docker Desktop; 3.. Erstellen Sie das Docker -Bild (mit Dockerfile); 4. Build Docker Image (mit Docker Build); 5. Docker -Container ausführen (mit Docker Run).

So aktualisieren Sie das Bild von Docker So aktualisieren Sie das Bild von Docker Apr 15, 2025 pm 12:03 PM

Die Schritte zur Aktualisierung eines Docker -Images sind wie folgt: Ziehen Sie das neueste Bild -Tag. Neues Bild Löschen Sie das alte Bild für ein bestimmtes Tag (optional) den Container neu (falls erforderlich) neu starten Sie neu (falls erforderlich).

So sehen Sie Protokolle von Docker So sehen Sie Protokolle von Docker Apr 15, 2025 pm 12:24 PM

Zu den Methoden zum Anzeigen von Docker -Protokollen gehören: Verwenden des Befehls docker Protokolle, z. cat /var/log/container_name.log Verwenden Sie den Befehl docker-compose-Protokolle von Docker Compose, zum Beispiel: Docker-compose -f Docker-com

So speichern Sie das Docker -Bild So speichern Sie das Docker -Bild Apr 15, 2025 am 11:54 AM

Um das Bild in Docker zu speichern, können Sie den Befehl docker comit verwenden, um ein neues Bild zu erstellen, das den aktuellen Status des angegebenen Containers Syntax: Docker Commit [Optionen] Container -ID -Bildname enthält. Um das Bild im Repository zu speichern, können Sie den Befehl Docker Push, Syntax: Docker -Push -Bildname [: Tag] verwenden. Um gespeicherte Bilder zu importieren, können Sie den Befehl Docker Pull, Syntax: Docker Pull Bildname [: Tag] verwenden.

So führen Sie den Befehl Docker aus So führen Sie den Befehl Docker aus Apr 15, 2025 am 11:24 AM

Wie reite ich Docker -Befehle aus? Installieren Sie Docker und starten Sie den Daemon. Common Docker -Befehle: Docker Bilder: Anzeige Bild Docker PS: Anzeige Container Docker Ausführen: Ausführen Container Docker Stopp: Stopp Container Docker RM: Löschen Sie Container Interagieren Sie mit Container mit Docker -Befehl: Dokker Exec: Execute -Befehl Dockker Anhang: Anhängen Konsole Docker Protokolls: Display LOCKER DOCKER Commit Wechsel zum Mirror Stop Dokker

See all articles