Dockerを利用したLNMP環境のインストールと導入方法
以下の手順で、Docker上でLNMP(Linux、Nginx、MySQL、PHP)環境を設置、展開できます。
- OSによって異なるDockerのインストール方法を選択してください。関連するインストールガイドはDocker公式サイト(https://www.docker.com)でご覧いただけます。
- ターミナルかコマンドラインで以下のコマンドを実行して Nginx イメージをプルする:
docker pull nginx
- Nginx コンテナの作成:次のコマンドを実行して Nginx コンテナを作成します。
docker run -d -p 80:80 --name nginx-container nginx
- MySQLイメージのプル:以下のコマンドを実行してMySQLイメージをプルします。
docker pull mysql
- コマンドを実行してMySQLコンテナを作成し、ユーザー名とパスワードを設定する:
docker run -d -p 3306:3306 --name mysql-container -e MYSQL_ROOT_PASSWORD=yourpassword mysql
- PHPイメージのプル:以下のコマンドを実行してPHPイメージをプルします:
docker pull php
- PHP コンテナを作成:次のコマンドを実行して PHP コンテナを作成し、プロジェクトのコードをコンテナにマウントする:
docker run -d -p 8080:80 --name php-container -v /path/to/your/code:/var/www/html php
コンテナ内の /var/www/html ディレクトリにホストの /path/to/your/code ディレクトリをマウントし、プロジェクトコードをそのディレクトリに配置できます。
- /etc/nginx/conf.d/default.conf
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
こうして、Nginx はHTTPリクエストをコンテナ上で動作するPHPアプリケーションにプロキシします。
- Nginxコンテナを再起動:以下のコマンドを実行してNginxコンテナを再起動し、設定ファイルを有効にします:
docker restart nginx-container
LNMP 環境の Docker への展開に成功しました。PHP アプリケーションは、ホスト マシンの IP アドレスにアクセスすることで、コンテナで実行できます。