zoukankan      html  css  js  c++  java
  • windows7+docker搭建nginx和php-fpm环境(官方镜像)

    win7安装docker见上一篇文章

    准备工作:挂载本地磁盘到虚拟系统

    本地文件夹结构 E:docker

    nginx文件夹结构

    conf文件夹结构

    1、

    docker pull nginx

    docker pull php:7.1-fpm

    2、

    启动php容器

    docker run --name php7.1 -v /e/docker/html:/var/www/html -p 9000:9000 -d php:7.1-fpm

    3、

    启动nginx容器

    docker run -d -p 8080:80 --name nginx1 -v /e/docker/html:/var/www/html -v /e/docker/nginx/conf/conf.d:/etc/nginx/conf.d -v /e/docker/nginx/logs:/var/log/nginx  --link php7.1:php7.1 nginx

     如果docker ps发现nginx未启动, 执行 su -c "setenforce 0" ,不要添加 --privileged=true(要不然可能有文件权限问题)

    如果docker ps发现nginx未启动, 执行 su -c "setenforce 0" (临时方式关闭selinux,每次容器重启前都要执行),不要添加 --privileged=true(要不然可能有文件权限问题)

     可以选择永久关闭selinux

    cp /etc/selinux/config /etc/selinux/config.bak
    # cat /etc/selinux/config
    # 更改setlinux级别
    sed -i 's/SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
       #  ==> vim /etc/selinux/config/  --> SELINUX=permissive
    [效果同上] # SELINUX参数enforcing代表打开,disabled代表关闭 # 查看selinux状态: getenforce

      

    4、

    本地文件夹conf.d中添加 default.conf

    内容:

    server {
        listen       80;
        server_name  localhost;
    
        #charset koi8-r;
        #access_log  /var/log/nginx/host.access.log  main;
    
        location / {
            root   /var/www/html;
            index  index.html index.htm index.php;
        }
    
        #error_page  404              /404.html;
    
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /var/www/html;
        }
    
        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ .php$ {
            #proxy_pass   http://127.0.0.1;
        #}
    
        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ .php$ {
            root           /var/www/html;
            fastcgi_pass   php7.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
    
        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        location ~ /.ht {
            deny  all;
        }
    }
    

      注意:php7.1为 php-fpm容器名称

    安装php扩展:

    docker exec -it php容器id /bin/bash

    使用  docker-php-ext-install pdo_mysql 进行安装

  • 相关阅读:
    vue+axios实现文件下载
    处理 Vue 单页面应用 SEO
    JSON.parse()与JSON.stringify()的区别
    JS设置Cookie过期时间
    <div>标签仿<textarea>。contentEditable=‘true’,赋予非表单标签内容可以编辑
    CSS上下左右居中的几种方法
    jqGrid 修改单元格值或者替换图片及其他
    对于Web性能优化, 了解和经验
    初步了解反射案列
    JS IndexOf移除符合规则的一项
  • 原文地址:https://www.cnblogs.com/winstonsias/p/11211935.html
Copyright © 2011-2022 走看看