我正在尝试使用docker运行我的symfony应用程序。我已下载此捆绑包eko/docker-symfony
我已将我的symfony项目复制到我的docker目录中。
如果我使用localhost刷新,则会出现此错误:找不到文件。
如果我在本地主机之后放置81端口,那么Kibana的页面就会出现。
当我运行docker ps
时,我注意到我所有容器的IP都是0.0.0.0
搬运工-compose.yml
version: '2'
services:
db:
image: mysql
ports:
- "3306:3306"
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: symfony
MYSQL_USER: symfony
MYSQL_PASSWORD: symfony
php:
build: ./php-fpm
expose:
- "9000"
volumes:
- ./symfony:/var/www/symfony
- ./logs/symfony:/var/www/symfony/app/logs
links:
- db
nginx:
build: ./nginx
ports:
- "80:80"
links:
- php
volumes_from:
- php
volumes:
- ./logs/nginx/:/var/log/nginx
elk:
image: willdurand/elk
ports:
- "81:80"
volumes:
- ./elk/logstash:/etc/logstash
- ./elk/logstash/patterns:/opt/logstash/patterns
volumes_from:
- php
- nginx
symfony.conf
server {
server_name symfony.dev;
root /var/www/symfony/web;
location / {
try_files $uri @rewriteapp;
}
location @rewriteapp {
rewrite ^(.*)$ /app.php/$1 last;
}
location ~ ^/(app|app_dev|config)\.php(/|$) {
fastcgi_pass php-upstream;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param HTTPS off;
}
error_log /var/log/nginx/symfony_error.log;
access_log /var/log/nginx/symfony_access.log;
}
答案 0 :(得分:0)
我认为问题是端口80.这可能会在您的主机上查找文件。
您可以尝试在不同的端口f.e下运行nginx。 8001
nginx:
build: ./nginx
ports:
- "8001:80"
并致电
或使用主机名。引用eko / docker-symfony的自述文件
...不要忘记在/ etc / hosts文件中添加symfony.dev。
像
127.0.0.1 symfony.dev
然后你可以打电话