ホームページ >バックエンド開発 >PHPチュートリアル >単純な PHP アプリケーションの Docker 化

単純な PHP アプリケーションの Docker 化

Barbara Streisand
Barbara Streisandオリジナル
2024-12-09 06:34:06665ブラウズ

Dockerizing a Simple PHP Application

コンテナ化は、さまざまな環境間での一貫性と移植性を求める開発者にとって状況を大きく変えるものです。このブログ投稿では、単純な PHP アプリケーションを Docker 化する実践的な例を説明します。このガイドを終えると、基本的な PHP アプリを提供する動作する Docker コンテナーが完成します。

概要

Docker を使用して基本的な PHP アプリケーションをコンテナ化します。ここで使用する PHP コードは次のとおりです:

<?php
// index.php
echo "Hello Docker!";
?>

これから作成する Dockerfile は、PHP 8.2 を使用してイメージを構築し、この PHP アプリケーションをポート 8000 で提供します。

ステップバイステップガイド

ステップ 1: アプリフォルダーを作成する

まず、プロジェクト用の新しいフォルダーを作成します。この例では、php-docker-app という名前を付けます。このフォルダー内に 2 つのファイルを追加します:

  • index.php - PHP アプリケーション コードが含まれています。
  • Dockerfile - コンテナー構成を定義します。

ステップ 2: Dockerfile を作成する

Dockerfile の内容は次のとおりです:

# Use the official PHP image
FROM php:8.2-cli

# Set the working directory
WORKDIR /usr/src/app

# Copy the PHP file into the container
COPY index.php .

# Expose port 80 (optional for CLI-based serving, not necessary in this example)
EXPOSE 80

# Command to run the PHP server on port 8000
CMD ["php", "-S", "0.0.0.0:8000", "index.php"]

ステップ 3: Docker イメージを構築する

ターミナルを開き、Dockerfile とindex.php が含まれるフォルダーに移動します。次のコマンドを実行して Docker イメージを構築します:

docker build -t php-helloworld .

このコマンドは次のことを行います:

  • Dockerfile を使用してイメージを構築します。
  • イメージに php-helloworld という名前のタグを付けます。

ステップ 4: Docker コンテナを実行する

イメージが正常に構築されたら、次のコマンドを使用してイメージからコンテナを実行します。

docker run -p 8000:8000 php-helloworld

以下のことが起こります:

  • -p フラグは、ホスト マシンのポート 8000 をコンテナのポート 8000 にマップします。
  • Docker は php-helloworld イメージを実行し、ポート 8000 で PHP サーバーを起動します。

ステップ 5: アプリにアクセスする

ブラウザを開くか、curl などのツールを使用して次の場所に移動します。

http://127.0.0.1:8000/

次の出力が表示されるはずです:

<?php
// index.php
echo "Hello Docker!";
?>

仕組み

  • ベースイメージ: php:8.2-cli 基本イメージは、すぐに使用できる PHP CLI 環境を提供します。
  • 作業ディレクトリ: WORKDIR /usr/src/app 命令は、コンテナ内の作業ディレクトリを設定します。
  • ファイルのコピー: Index.php のコピー。コマンドは、PHP スクリプトをホストからコンテナーにコピーします。
  • コマンドの実行: CMD ディレクティブは、index.php ファイルを提供する PHP サーバーを起動します。

PHP アプリを Docker 化する利点

  • 一貫性: アプリは異なる環境でも同じように動作します。
  • 移植性: アプリは Docker がインストールされている場所ならどこでも実行できます。
  • セットアップの簡単さ: PHP をインストールしたり、サーバーをローカルに構成したりする必要はありません。

次のステップ

このガイドでは、単純な PHP アプリの Docker 化の基本を説明しました。さらに詳しく説明すると:

  • より複雑なシナリオを処理するには、Apache や Nginx などの Web サーバーを追加します。
  • 複数コンテナーのセットアップを管理するために docker-compose.yml ファイルを作成します。
  • データベース サービスまたはその他の依存関係を統合します。

結論

わずか数ステップで、PHP アプリケーションの Docker 化が完了しました。このアプローチは、分離された再現可能な開発環境を作成するのに最適です。より複雑なプロジェクトに試してみて、Docker がどのようにワークフローを合理化するかを確認してください!

以上が単純な PHP アプリケーションの Docker 化の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。