Php-fpmとnginxに自動docker-imageを使用しています( https://hub.docker.com/r/tobi312/rpi-php/ と https:// hub .docker.com/r/tobi312/rpi-nginx / )Raspberry Piで実行され、libreelecが上にあります。
Phpコンテナは、次のコマンドを実行して、ポート9000を開いた状態で正常に起動します。
docker run --name php -v /var/www/restTools:/var/www/html -d 3dd6ff8c0d58
その後、次のようにnginx-containerを起動しました。
docker run --name nginx -d -p 8081:80 --link php:9000 -v /var/www/restTools:/var/www/html 0d90cc6eb00f
両方のコンテナが実行されていますが、nginxはphpファイルを実行しておらず、ダウンロード用に提供しているだけです。
しばらくして、コマンドにdefault.conf
を追加することにより、-v /var/www/.config/nginx:/etc/nginx/conf.d:ro
を介してphpコンテナへの接続の詳細をコミットしようとしました。
default.conf
からの抜粋:
root /var/www/html;
location / {
root /var/www/html;
index index.html index.htm index.php;
}
location ~ \.php$ {
root /var/www/html;
fastcgi_pass php:9000;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_index index.php;
fastcgi_param REMOTE_ADDR $http_x_real_ip;
fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
include fastcgi_params;
if (!-f $document_root$fastcgi_script_name) {
return 404;
}
}
何が足りないのですか?
Dockerの(非推奨!!)「リンク」オプションを使用しようとしています。これ自体は問題ではありませんが、尊重する必要があります 構文
--link <name or id>:alias
だから、あなたはあなたの代わりにする必要があります
--link php:9000
正しい
--link php
default.confで参照したのと同じ名前をfpmコンテナーに付けたため、エイリアスは必要ありません。もう1つの重要なことは、phpファイルフォルダーをfpmコンテナーにマウントすることですが、これは既に正しく行っています。