Docker は軽量コンテナ テクノロジとして、アプリケーションのデプロイメントと管理において独自の利点を持っています。 Docker を使用すると、アプリケーションとその必要な実行環境をポータブル コンテナにパッケージ化し、迅速かつ柔軟な展開と管理を実現できます。
この記事では、Nginx PHP-FPM を例として、Docker を使用して Web プログラムをデプロイする方法を紹介します。
まず、このマシンに Docker をインストールする必要があります。具体的なインストール方法は[Docker公式サイト](https://docs.docker.com/engine/installation/)に記載されています。
インストールが完了したら、次のコマンドを使用して Docker のバージョンを確認できます:
docker version
この記事では最も単純な PHP プログラムを取り上げます。例: この例では、次の内容を含む新しい index.php
ファイルをマシン上の任意のディレクトリに作成します:
<?php phpinfo(); ?>
次, Mirrorを構築するためのDockerfileを準備する必要があります。このマシン上の任意のディレクトリに次の内容の新しい Dockerfile ファイルを作成します:
# 基础镜像 FROM php:7.0-fpm # 将本地文件夹挂载到当前容器 RUN mkdir -p /var/www/html WORKDIR /var/www/html COPY index.php /var/www/html # 安装nginx RUN apt-get update RUN apt-get install -y nginx # 将nginx配置文件复制到容器中 COPY default.conf /etc/nginx/conf.d/default.conf # 开放80端口 EXPOSE 80 # 启动nginx和php-fpm服务 CMD service nginx start && php-fpm
上記の Dockerfile には次の部分が含まれます:
index.php
ファイルをコンテナーにコピーします。 さらに、Nginx 構成ファイルも必要です。このマシン上の任意のディレクトリに次の内容の新しい default.conf
ファイルを作成します:
server { listen 80; server_name localhost; root /var/www/html; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ \.php$ { fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name; include fastcgi_params; fastcgi_pass unix:/var/run/php/php7.0-fpm.sock; } }
上記の Nginx 構成ファイルには次の部分が含まれます:
server
: Nginx がリッスンするポート番号とサーバー名を指定します; root
: ルート ディレクトリを指定します; location
: リクエストURLのマッチング方法を指定; fastcgi_param
: PHPプログラムのファイルパスを指定; fastcgi_pass
: アドレスを指定php-fpm サービスの。 上記 2 つのファイルのディレクトリで、次のコマンドを実行してイメージをビルドします:
docker build -t webapp .
その中に webapp
はイメージ名で、最後の .
は現在のディレクトリを表します。
構築が完了したら、次のコマンドを使用して現在のすべてのイメージを表示できます:
docker images
次のコマンドを実行してコンテナーを開始します:
docker run -p 80:80 -e TZ=Asia/Shanghai webapp
このうち、-p
パラメータはコンテナのポート 80 をローカル マシンのポート 80 にマッピングし、-e
パラメータはローカル マシンのタイム ゾーンを指定します。コンテナ。
正常に実行されたら、ブラウザに http://localhost
と入力して Web アプリケーションにアクセスします。
上記の手順により、Docker を使用した単純な Web アプリケーションのデプロイに成功しました。 Docker を使用すると、複雑な構成プロセスが効果的に削減され、展開と管理がより簡単かつ自動化されます。コンテナ テクノロジの継続的な開発と改善により、Docker は将来、アプリケーションのデプロイと管理のための主流ツールの 1 つになることは確実です。
以上がDocker を使用して Web プログラムをデプロイする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。