zoukankan      html  css  js  c++  java
  • docker-compose 搭建php+nginx+mysql+redis

    参考:https://gitee.com/Tinywan/dnmp

    拉取代码

     git clone https://gitee.com/Tinywan/dnmp.git
     cd dnmp 
    

    新建配置文件

    cp env.example .env
    

    修改.env,对应共享目录

    SOURCE_SHARE_DIR=/mnt/hgfs/www
    

      

    开启容器服务

    docker-compose up
    #docker-compose -f /mnt/hgfs/www/dnmp/docker-compose.yml up
    

    守护进程 docker-compose up -d

    nginx配置

    配置文件端口必须和 docker-compose.ymlports - 8088:80中的映射出来的端口一一对应

    修改dnmpconf ginx.conf 

    #dnmpconf
    ginx.conf 
    upstream fastcgi_proxy{
            server php74:9000;
        }
    

      

    #dnmpconfconf.dhlyunhlyun_gateway.conf
    server {
            listen       7003;
            server_name  localhost;
            location / {
                root   /var/www/113frontend/dist;
                index  index.html index.htm index.php;
                if (!-e $request_filename) {
                    rewrite ^/(.*)$ / redirect;
                }
            }
    
            error_page   500 502 503 504  /50x.html;
           
            location /api {
            #rewrite ^.+api/?(.*)$ /$1 break;
            #include uwsgi_params;
            proxy_pass http://localhost:7002;
            }
    
        }
    
    server {
            listen       7002;
            server_name  localhost;
            location / {
                root   /var/www/hlyun_v3/hlyun_gateway/src/public;
                index  index.html index.htm index.php;
                try_files $uri $uri/ /index.php?$query_string;
            }
            error_page   500 502 503 504  /50x.html;
            location ~ .php$ {
                root           /var/www/hlyun_v3/hlyun_gateway/src/public;
                fastcgi_pass   fastcgi_proxy;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include        fastcgi_params;
            }
    
        }
       
    
       
    

      

    重新加载配置文件 docker exec -it dnmp-nginx nginx -s reload

    修改php-fpm:

    #dnmpconfphpphp-fpm.dwww.conf
    pm = static
    pm.max_children = 30

    进入PHP容器(该容器没有bash shell。但在/bin/sh有一个shell):

    docker exec -it dnmp-php74 /bin/sh
    

      

    mysql5.7导入DATETIME字段数据时遇到错误incorrect datetime value '0000-0-0 00:00:00' for column

    解决办法:去掉NO_ZERO_IN_DATE,NO_ZERO_DATE

    #dnmpconfmysqlmy.cnf
    sql_mode ='STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'
    

      

  • 相关阅读:
    nodewebkit系列(00):什么是nodewebkit?
    浅析Chrome Packaged Apps
    C#实现飞信短信发送
    结束——2012年微软精英挑战赛
    Vue开发笔记 — Vue项目结构
    TOGAF
    笔记本安装CentOS8
    架构设计的10个核心原则
    Vue PDF文件预览vuepdf
    Druid中使用log4j2进行日志输出
  • 原文地址:https://www.cnblogs.com/blog-dyn/p/14538081.html
Copyright © 2011-2022 走看看