我开始使用Docker
和docker-compose
我的第一步是构建一个包含2个容器的堆栈:1个用于nginx,1个用于php-fpm
使用该配置,它正在运行
version: '3.3'
services:
web:
image: nginx
ports:
- "9090:80"
volumes:
- ./conf/default.conf:/etc/nginx/conf.d/default.conf:ro
- ./content:/usr/share/nginx/html:ro
links:
- php
php:
image: php:7.1.8-fpm
volumes:
- ./content:/usr/share/nginx/html:ro
在/content
我同时拥有index.html
和phpinfo.php
我可以在浏览器中获取这两个页面。
但我不明白为什么我必须将所有页面放在两个容器中?
如果我没有为php service
设置音量,则会显示index.html但不显示phpinfo.php(找不到文件。)
如果我没有为web service
设置音量,则显示nginx index.html但不显示phpinfo.php(404错误)。
现在,如果我想部署wordpress网站,我将不得不复制两个容器中的所有文件?
答案 0 :(得分:0)
配置错误。好的做法是分离所有进程,所以你应该有3个服务:nginx,php-fpm和php。源代码应该只在php容器内。