インターネットの急速な発展に伴い、クラウド サーバーに基づいてデプロイする必要があるアプリケーションがますます増えており、この目標を達成するには Docker コンテナ テクノロジを使用することが適切です。この記事では、PHP と Docker を使用してデプロイ可能なアプリケーションを構築し、より効率的で安定したデプロイメント エクスペリエンスを実現する方法を紹介します。
1.Docker とは何ですか?
Docker は、プログラムと依存関係をコンテナーにパッケージ化し、さまざまな環境に簡単にデプロイできるようにするコンテナー テクノロジです。完全なハードウェア エミュレーションを通じて物理マシンをエミュレートする仮想マシンとは異なり、Docker コンテナはホスト オペレーティング システム上で実行され、ホスト オペレーティング システムのリソースを使用するため、デプロイが容易になり、リソースをより効率的に利用できます。
2. なぜ Docker を使用するのでしょうか?
Docker コンテナを使用する主な利点は次のとおりです:
1. デプロイの高速化: Docker は数秒でコンテナを起動できるため、デプロイが速くなります。
2. リソース使用量の削減: Docker コンテナはホスト オペレーティング システム上で実行されるため、使用するリソースが少なくなり、サーバー リソースが節約されます。
3. より簡単な移行: Docker コンテナはさまざまな環境に簡単にデプロイできるため、クロスプラットフォーム アプリケーションに最適です。
3. Docker コンテナの構築
Docker コンテナを構築する基本的な手順は次のとおりです。
フォルダーを作成し、フォルダー内に Dockerfile という名前のファイルを作成します。コンテナーに必要なすべての命令と手順は、Dockerfile ステップで定義されます。
Dockerfile ファイルでは、FROM 命令を使用してベース Docker イメージを選択し、RUN 命令を使用してコマンドを実行する必要があります。たとえば、次の手順では、基本的な PHP イメージを選択し、ソフトウェア ソースを更新し、依存関係パッケージをインストールします。
FROM php:7.2-apache
RUN apt-get update && apt-get install -y
git zip unzip vim libpng-dev libjpeg62-turbo-dev libfreetype6-dev && docker-php-ext-install pdo_mysql mysqli gd && a2enmod rewrite
COPY ディレクティブは、アプリケーションを Docker コンテナにコピーできます。たとえば、次のコードは、ローカル アプリケーション バックアップ フォルダ内のすべてのファイルをコンテナの /var/www/html ディレクトリにコピーします。
COPY ./backup /var/www/html
コンテナには、 PHPプロジェクト。 Dockerfile ファイルでは、次の手順を使用して Composer をインストールできます:
RUNcurl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin - - filename=composer
EXPOSE コマンドを使用して、コンテナ ポートを外部に公開します:
EXPOSE 80
最後に、次のコマンドを使用して Docker イメージをビルドします:
docker build -t my-php-app .
次に、コンテナを実行し、ポートをホストにマップします:
docker run -p 80:80 my-php-app
これらのコマンドを実行すると、http:// にアクセスできるようになります。 localhost またはホストの IP アドレス、アプリケーションが正常に実行されたかどうかを確認してください。
4. 概要
この記事では、PHP コンテナーと Docker コンテナーを使用してデプロイ可能なアプリケーションを構築する方法を紹介します。アプリケーションのデプロイメントに Docker を使用すると、開発者と運用保守担当者の作業負荷が大幅に軽減され、より効率的で安定したデプロイメント エクスペリエンスが得られます。
この実験を完了した方は、基本的な Docker コンテナの構築方法と使用スキルを習得していると思います。今後の開発および展開プロセスでは、これらのスキルを使用して、開発および展開の効率を大幅に向上させることができます。
以上がPHP と Docker を使用してデプロイ可能なアプリケーションを構築する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。