Heim  >  Artikel  >  Backend-Entwicklung  >  Wie verwende ich Docker zum Verpacken und Bereitstellen von PHP-Programmen?

Wie verwende ich Docker zum Verpacken und Bereitstellen von PHP-Programmen?

王林
王林Original
2023-07-29 17:48:381797Durchsuche

Wie verwende ich Docker zum Packen und Bereitstellen von PHP-Programmen?

Mit der weit verbreiteten Anwendung von Cloud Computing und Containerisierungstechnologie beginnen immer mehr Entwickler, Docker zum Verpacken und Bereitstellen von Anwendungen zu verwenden. In diesem Artikel stellen wir vor, wie Sie Docker zum Verpacken und Bereitstellen von PHP-Programmen verwenden, und geben relevante Codebeispiele.

1. Docker installieren

Bevor wir beginnen, müssen wir zuerst Docker installieren. Informationen zu den Installationsschritten finden Sie in der offiziellen Docker-Dokumentation. Wählen Sie die entsprechende Installationsmethode für die verschiedenen Betriebssysteme aus.

2. Dockerfile erstellen

Dockerfile ist eine Datei, die zum Definieren des Docker-Image-Erstellungsprozesses verwendet wird. Wir können die erforderliche Software, Umgebung und Abhängigkeiten angeben und das PHP-Programm darin packen.

Erstellen Sie zunächst eine Datei mit dem Namen Dockerfile im Stammverzeichnis des Programms und fügen Sie dann den folgenden Inhalt hinzu:

# 指定基础镜像
FROM php:7.4-apache

# 拷贝程序文件到镜像中
COPY . /var/www/html/

# 安装程序所需的依赖
RUN apt-get update && apt-get install -y 
    libpng-dev 
    libonig-dev 
    libxml2-dev 
    && docker-php-ext-install -j$(nproc) pdo 
    && docker-php-ext-install -j$(nproc) mbstring 
    && docker-php-ext-install -j$(nproc) exif 
    && docker-php-ext-install -j$(nproc) pcntl 
    && docker-php-ext-install -j$(nproc) bcmath 
    && docker-php-ext-install -j$(nproc) gd 
    && docker-php-ext-install -j$(nproc) zip 
    && docker-php-ext-install -j$(nproc) mysqli 
    && docker-php-ext-install -j$(nproc) xml

# 设置Apache的DocumentRoot目录
RUN sed -ri -e 's!/var/www/html!/var/www/html/public!g' /etc/apache2/sites-available/*.conf
RUN sed -ri -e 's!/var/www/!/var/www/html/public!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf

# 重启Apache服务
RUN service apache2 restart

Der Inhalt der obigen Docker-Datei umfasst die folgenden Teile:

  • Geben Sie an, dass das Basisbild verwendet wird php:7.4- Apache, dieses Image enthält bereits die Laufumgebung von PHP und Apache.
  • Kopieren Sie die Programmdateien in das Verzeichnis /var/www/html/ im Bild.
  • Verwenden Sie den Befehl apt-get, um die vom Programm benötigten Abhängigkeiten zu installieren.
  • Setzen Sie das DocumentRoot-Verzeichnis von Apache auf /var/www/html/public.
  • Starten Sie den Apache-Dienst neu.

3. Erstellen Sie das Docker-Image

Führen Sie den folgenden Befehl in dem Verzeichnis aus, in dem sich die Docker-Datei befindet, und ein Docker-Image wird basierend auf der Docker-Datei erstellt:

$ docker build -t php-app .

Im obigen Befehl -t php -app wird ausgedrückt als Geben Sie einen Namen für das erstellte Image an, und . gibt das Verzeichnis an, in dem sich die Docker-Datei befindet. -t php-app表示为构建的镜像指定一个名称,.表示Dockerfile所在的目录。

四、运行Docker容器

构建完镜像后,我们可以使用以下命令来运行一个Docker容器:

$ docker run -d -p 80:80 php-app

以上命令中,-d表示在后台运行容器,-p 80:80表示将容器的80端口映射到主机的80端口,php-app

4. Führen Sie den Docker-Container aus

Nachdem wir das Image erstellt haben, können wir den folgenden Befehl verwenden, um einen Docker-Container auszuführen:

rrreee

Im obigen Befehl bedeutet -d, dass der Container ausgeführt wird Hintergrund, -p 80:80 bedeutet die Zuordnung von Port 80 des Containers zu Port 80 des Hosts und php-app bedeutet den Namen des laufenden Containers.
  1. Jetzt können Sie auf das PHP-Programm zugreifen, das im Docker-Container ausgeführt wird, indem Sie auf http://localhost zugreifen.
  2. 5. Zusätzliche Anweisungen
  3. Wenn das Programm eine Verbindung zur Datenbank herstellen muss, können Sie den entsprechenden Datenbanktreiber zur Docker-Datei hinzufügen und beim Ausführen des Containers die Datenbankverbindungsparameter angeben.

Wenn das Programm andere Dienste oder Komponenten benötigt, können Sie die entsprechenden Installations- und Konfigurationsschritte in der Docker-Datei hinzufügen.

Sie können Docker Compose verwenden, um den Prozess des Erstellens und Ausführens von Containern zu vereinfachen. Informationen zur spezifischen Verwendung finden Sie in der offiziellen Docker-Dokumentation.

🎜🎜Zusammenfassung🎜🎜Durch die Verwendung von Docker können wir das PHP-Programm zur einfachen Bereitstellung und Migration in einen unabhängigen Container packen. In diesem Artikel wird erläutert, wie Sie mit Docker das Packen und Bereitstellen von PHP-Programmen implementieren, und es werden relevante Codebeispiele aufgeführt. Hoffe das hilft! 🎜

Das obige ist der detaillierte Inhalt vonWie verwende ich Docker zum Verpacken und Bereitstellen von PHP-Programmen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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