So implementieren Sie die Docker-Containerisierung mit PHP

WBOY
Freigeben: 2023-06-22 22:00:02
Original
911 Leute haben es durchsucht

Mit der Entwicklung der Cloud-Computing-Technologie ist die Dockerisierung immer beliebter geworden. Im Prozess der Dockerisierung spielt auch PHP eine wichtige Rolle. In diesem Artikel erfahren Sie, wie Sie die Docker-Containerisierung mit PHP implementieren.

  1. Installieren Sie Docker und Docker Compose

Zuerst müssen wir Docker und Docker Compose installieren, um schnell den PHP-Container zu erstellen, den wir in der lokalen Umgebung benötigen. Wenn Sie Docker und Docker Compose noch nicht kennen, können Sie zunächst auf die offizielle Dokumentation zurückgreifen, um mehr darüber zu erfahren.

  1. Schreiben der Docker-Datei

Der nächste Schritt besteht darin, die Docker-Datei zu schreiben. Hier definieren wir die Containerumgebung. Dort können Sie das erforderliche Basis-Image angeben, die erforderlichen Pakete installieren und etwaige Init-Skripte ausführen. Hier ist ein einfaches Dockerfile-Beispiel:

FROM php:7.4-apache

RUN apt-get update && apt-get install -y 
    git 
    libzip-dev 
    && docker-php-ext-install zip 
    && docker-php-ext-enable zip 
    && rm -rf /var/lib/apt/lists/*

WORKDIR /var/www/html

COPY . .

RUN chown -R www-data:www-data /var/www/html

EXPOSE 80
Nach dem Login kopieren

Die obige Dockerfile verwendet das offizielle PHP:7.4-Apache-Image und installiert die Git- und libzip-dev-Pakete. Anschließend installieren wir die Zip-Erweiterung für PHP und aktivieren die Erweiterung. Kopieren Sie abschließend die gesamte Anwendung in den Container und stellen Sie sicher, dass die Ordnerberechtigungen richtig eingestellt sind. Schließlich machen wir Port 80 des Containers über den EXPOSE-Befehl verfügbar. Wenn Sie andere Ports haben, die verfügbar gemacht werden müssen, können Sie diese auch hier angeben.

  1. Schreiben der Docker Compose-Datei

Mit der Docker-Datei können wir den PHP-Container in der lokalen Umgebung erstellen. Normalerweise benötigen wir jedoch mehr Container, um die gesamte Anwendung zu erstellen. Zu diesem Zeitpunkt können wir Docker Compose verwenden, um mehrere Container zu verwalten. Das Folgende ist ein einfaches Beispiel für eine Docker Compose-Datei:

version: '3.3'

services:
  web:
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - "8000:80"
    volumes:
      - .:/var/www/html
    depends_on:
      - mysql

  mysql:
    image: mysql:5.7
    environment:
      MYSQL_RANDOM_ROOT_PASSWORD: "yes"
      MYSQL_DATABASE: "app_db"
      MYSQL_USER: "app_user"
      MYSQL_PASSWORD: "app_password"
    volumes:
      - db_data:/var/lib/mysql

volumes:
  db_data:
Nach dem Login kopieren

Die obige Docker Compose-Datei definiert zwei Dienste: Web und MySQL. Der Webdienst verwendet die Docker-Datei, die wir zuvor geschrieben haben, um den Container zu erstellen, und ordnet den Port 80 des Containers dem lokalen Port 8000 zu, sodass wir lokal auf den Container zugreifen können. Darüber hinaus ordnen wir das aktuelle Verzeichnis dem Verzeichnis /var/www/html im Container zu, damit der Container auf unseren Anwendungscode zugreifen kann. Schließlich hängt der Webdienst auch vom MySQL-Dienst ab, dh wenn der MySQL-Dienst nicht gestartet wird, kann der Webdienst nicht gestartet werden.

Der MySQL-Dienst verwendet das offizielle MySQL:5.7-Image und es werden Umgebungsvariablen angegeben, um das Root-Passwort und das Datenbankkonto-Passwort festzulegen. Darüber hinaus verwenden wir Volumes, um MySQL-Daten beizubehalten.

  1. Container erstellen und starten

Mit der Docker-Datei und der Docker Compose-Datei können wir den Container erstellen und starten. Um den Container zu erstellen, gehen Sie im Terminal in das Verzeichnis, in dem sich die Docker Compose-Datei befindet, und führen Sie den folgenden Befehl aus:

docker-compose build
Nach dem Login kopieren

Dieser Befehl erstellt alle Container der Anwendung basierend auf der Docker Compose-Datei, einschließlich Web und MySQL Behälter.

Führen Sie als Nächstes den folgenden Befehl aus, um die Anwendung zu starten:

docker-compose up
Nach dem Login kopieren

Dadurch werden alle Container gestartet und miteinander verbunden. Wir können auf unsere Anwendung zugreifen, indem wir http://localhost:8000 in den Browser eingeben.

  1. Zusammenfassung

Die oben genannten Schritte sind die grundlegenden Schritte zur Implementierung der Docker-Containerisierung mit PHP. Dieser Ansatz ist eine praktische Möglichkeit, die Anwendungsbereitstellung und -wartung effizienter zu gestalten. Durch Docker können wir schnell von der Entwicklungsumgebung zur Produktionsumgebung wechseln und gleichzeitig die Konsistenz der Anwendung in verschiedenen Umgebungen sicherstellen. Bei Bedarf kann es geändert und an Ihre Anwendungsanforderungen angepasst werden. Natürlich ist Docker auch ein riesiges Werkzeug, das erfordert, dass wir es bei der Verwendung ausreichend verstehen und beherrschen.

Das obige ist der detaillierte Inhalt vonSo implementieren Sie die Docker-Containerisierung mit PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!