我使用docker-compose来设置一个最小的nginx + php-fpm应用程序,但由于某些原因,docker容器上没有php.ini文件(我知道是因为phpinfo()表示Loaded Configuration File: (none) )。
这是我docker-compose.yml文件:
web: image: nginx ports: - "8080:80" volumes: - ./site.conf:/etc/nginx/conf.d/site.conf links: - php php: image: php:5-fpm volumes: - .root:/var/www/html:ro command: bash -c "apt-get update && apt-get install -y php5-mysql && php-fpm"
site.conf也很简单:
server { index index.php; server_name local.myspicesage.com; error_log /var/log/nginx/error.log; access_log /var/log/nginx/access.log; root /var/www/html; 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; } }
最后我有最基本的index.php可能:
<?php echo phpinfo();
我真的不想从头开始,如果我不必。 是否应该有一个php.ini文件包含在php:5-fpmdocker图像? 如果没有,是否有一个我可以用来开始的通用文件?
你需要添加php.ini文件:
docker运行-d –name php-tmp php:5-fpm
docker cp php-tmp:/usr/src/php.tar.xz。
compose_root / PHP / php.ini中发展
在php容器中添加php.ini的音量
卷: