マシン上にドッカーを備えた完全なLNMP環境を設定したいと思います。しかし、分離されたphp-fpm & nginxコンテナには何か問題があります。php-fpm&nginxが分離ドッカーコンテナにあり、.phpファイルを実行できません
何I'vが行わことです:docker.ioから
プル画像:
ドッカプルPHP:7.1-FPM
ドッカプルnginxの
実行して画像:
ドッカーrun -d --name php-fpm -v/data/Docker/php-fpm /configs/:/usr/local/etc/php-fpm.d -v/data/Docker/nginx/html:/ var/www/html php:7.1-fpm
ドッカーrun -d --name nginx/var/www/html -p 80:80 - リンクphp-fpm nginx
すべてのディレクトリ&ファイルは755の特権です。
コンフィグファイルは、以下のrを:
nginx.conf
server {
listen 80 default_server;
server_name SkyEyeLab;
root /var/www/html;
fastcgi_read_timeout 90;
location ~ \.php {
fastcgi_pass php-fpm:9000;
}
}
とphp-fpm.conf
(重要な設定セクションの一部):
listen 0.0.0.0:9000
listen.allowed_clients = any
は、その後、私はnginxの&のphp-FPMの環境をチェックします:
[[email protected] ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6faf4a4b4f7e nginx "nginx -g 'daemon off" 19 minutes ago Up 19 minutes 0.0.0.0:80->80/tcp, 443/tcp nginx
9a6caff831d3 php:7.1-fpm "php-fpm" 20 minutes ago Up 20 minutes 9000/tcp php-fpm
[[email protected] ~]# docker exec 6faf4a4b4f7e ping -c3 php-fpm
PING php-fpm (172.17.0.2): 56 data bytes
64 bytes from 172.17.0.2: icmp_seq=0 ttl=64 time=0.081 ms
64 bytes from 172.17.0.2: icmp_seq=1 ttl=64 time=0.018 ms
64 bytes from 172.17.0.2: icmp_seq=2 ttl=64 time=0.041 ms
--- php-fpm ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.018/0.047/0.081/0.026 ms
[[email protected] ~]# docker exec 9a6caff831d3 ss -apn
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
tcp LISTEN 0 128 *:9000 *:* users:(("php-fpm",pid=1,fd=7))
すべてうまく見えます。それから私は、次の内容の(nginxののの/ var/www/htmlディレクトリにmoutedさ)/データ/ドッカー/ nginxの/ htmlの下a.php作成:
<?php
phpinfo();
?>
はその後、Webブラウザで
http://localhost:80/a.phpにアクセスします。
[[email protected] ~]# docker logs 6faf4a4b4f7e
220.181.171.120 - - [11/Oct/2016:10:25:11 +0000] "GET /a.php HTTP/1.1" 200 31 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:49.0) Gecko/20100101 Firefox/49.0"
220.181.171.120 - - [11/Oct/2016:10:25:12 +0000] "GET /a.php HTTP/1.1" 200 31 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:49.0) Gecko/20100101 Firefox/49.0"
220.181.171.120 - - [11/Oct/2016:10:31:58 +0000] "GET /a.php HTTP/1.1" 200 31 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:49.0) Gecko/20100101 Firefox/49.0"
220.181.171.120 - - [11/Oct/2016:10:31:59 +0000] "GET /a.php HTTP/1.1" 200 31 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:49.0) Gecko/20100101 Firefox/49.0"
に思えa.php
正しく実行&を解析されます。 しかし、私は唯一の空のページを持って、私はnginxのののaccess.logをチェックします。しかし、なぜ私はWebブラウザでphpinfo()の結果を見ることができないのですか?うまく