本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

使用 docker 运行 symfony2 应用程序 [文件未找到。]

发布于2023-11-29 20:03     阅读(788)     评论(0)     点赞(1)     收藏(3)


我正在尝试使用 docker 运行我的 symfony 应用程序。我已经下载了这个捆绑包eko/docker-symfony

我已将 symfony 项目复制到我的 docker 目录中。

如果我使用本地主机刷新,则会出现此错误:找不到文件。

如果我将端口 81 放在 localhost 之后,Kibana 页面将会启动。

当我运行时docker ps,我注意到所有容器的 IP 都是0.0.0.0

docker-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;
}

图片


解决方案


我认为问题出在端口 80。这可能会在您的主机上查找文件。

您可以尝试在不同的端口 fe 8001 下运行 nginx

nginx:
        build: ./nginx
        ports:
            - "8001:80"

并打电话

http://本地主机:8001

或使用主机名。引用 eko/docker-symfony 的自述文件

...并且不要忘记在 /etc/hosts 文件中添加 symfony.dev。

喜欢

127.0.0.1 symfony.dev

然后你可以打电话

http://symfony.dev



所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:http://www.phpheidong.com/blog/article/550179/2c31f98ad4216eaa77b5/

来源:php黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

1 0
收藏该文
已收藏

评论内容:(最多支持255个字符)