公式のnginxとphpドッカーの画像を使って、単純なindex.phpファイルを実行したい。公式のnginxとPHPドッカーの画像を使った "Hello World"の仕方?
- Ubuntuのバージョンは16.04.1 LTS(私のホストマシン)
- ドッキングウィンドウのバージョンが1.12.6
- ドッカ・コンバージョン1.9.0
私の地元である:これらは私の前提条件私のホストマシン上のディレクトリはそうのようになります。
:\code
index.php
docker-compose.yml
nginx.conf
のindex.phpは、いくつかの簡単なコードが含まれています
web:
image: nginx:latest
ports:
- "8181:80"
volumes:
- ./code:/code
- ./nginx.conf:/etc/nginx/nginx.conf
links:
- php
php:
image: php:7-fpm
volumes:
./code:/code
nginx.confは、これらの命令が含まれています(バージョン1):
worker_processes 1
events { worker_connections 1024; }
http {
sendfile on;
server {
listen 80;
index index.php index.html;
root /code;
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass php:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
}
}
私は実行するすべてこれにより
<?php
echo phpinfo();
?>
ドッキングウィンドウ-compose.ymlは、これらの命令(バージョン1)が含まれコマンド:
docker-compose up --force-recreate
私は、コンソールイメージが作成されますが、localhost:8181に移動すると、エラーメッセージが表示されます。これは、エラーメッセージの全文です:クライアント:172.17.0.1、サーバー:
* 1「/etc/nginx/html/index.phpは」(そのようなファイルやディレクトリ2)が発見されていません:リクエスト: "GET/HTTP/1.1"、ホスト: "localhostを:8181"
それは/etc/nginx/html/
フォルダに検索し、nginx.confファイルからroot /code;
の指示を無視する理由を私は本当に、不思議。それが今では同じように見えるようにもかかわらず、私は、ドッキングウィンドウ-compose.ymlを編集:あなたが見ることができるように
web:
image: nginx:latest
ports:
- "8181:80"
volumes:
- ./code:/etc/nginx/html
- ./nginx.conf:/etc/nginx/nginx.conf
links:
- php
php:
image: php:7-fpm
volumes:
./code:/code
、私は、Web /ボリュームの下に一つだけの命令を変更しました:今
./code:/code -> ./code:/etc/nginx/html
、私はdocker-compose up --force-recreate
を再実行し、ローカルホストに行くとき:172.17.0.1、サーバー:上流、クライアントからの応答ヘッダを読みながら「原発不明スクリプト」:標準エラー出力に送信され
のFastCGI:8181私は別のエラーメッセージが表示され、要求を: "GET/HTTP/1.1"、upストリーム: "fastcgi://172.17.0.2:9000"、ホスト: "localhost:8181"
ここで私はそれがどういう意味か分かりません。その後、私はnginx.confのさまざまな命令の組み合わせを試しましたが、まったく同じエラーメッセージが表示されて失敗するたびに終了しました。だから私の疑問はどうすればそれを動作させることができるのだろうか? docker-compose.ymlとnginx.confは、世界で最も単純なスクリプトを実行できるようにするにはどうすればよいでしょうか?