• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    docker 搭建lnmp环境的方法步骤

    创建项目目录

    mkdir php

    创建如下项目结构

    ├── Readme.md
    ├── docker-compose.yml
    ├── script
    ├── services
    │ ├── mariadb
    │ │ └── Dockerfile
    │ ├── nginx
    │ │ ├── Dockerfile
    │ │ ├── conf.d
    │ │ │ └── default.conf
    │ │ └── nginx.conf
    │ ├── php
    │ │ └── Dockerfile
    │ └── redis
    │  └── Dockerfile
    └── sites
     ├── index.html
     └── index.php
    
     
    8 directories, 10 files
    
    

    编辑docker-compose文件

    version: "3"
    services: 
     php:
     build: ./services/php
     # ports: 
     # - "9001:9000"
     container_name: lnmp-php
     restart: always
     volumes: 
      - ./sites:/www
     networks:
      lnmp_net:
      ipv4_address: 101.11.11.10
    
     nginx:
     build: ./services/nginx
     ports:
      - "81:80"
      - "444:443"
     container_name: lnmp-nginx
     restart: always
     volumes: 
      - ./sites:/www
      - ./services/nginx/nginx.conf:/etc/nginx/nginx.conf
      - ./services/nginx/conf.d:/etc/nginx/conf.d:rw
     networks:
      lnmp_net:
      ipv4_address: 101.11.11.11
    
    networks:
     lnmp_net:
     driver: bridge
     ipam:
      config:
      - subnet: 101.11.11.0/20
    
    

    编辑services/nginx文件

    FROM nginx:1.17.0-alpine
    
    # 更新安装源
    RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories
    
    # 设置时区为上海
    RUN apk update && apk add --upgrade \
    
     && apk add tzdata \
    
     && cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
    
     && echo "Asia/Shanghai" > /etc/timezone \
    
     && apk del tzdata
    
    

    编辑services/php文件

    FROM php:7.3.6-fpm-alpine3.9
    
    # 更新安装源
    RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories
    
    # 设置时区为上海
    RUN apk update && apk add --no-cache tzdata autoconf gcc g++ make zlib-dev curl-dev\
    
     && cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
    
     && echo "Asia/Shanghai" > /etc/timezone \
    
     && apk del tzdata \
    
     && docker-php-ext-install mysqli pdo_mysql opcache \
    
     && pecl install grpc protobuf xdebug yaf yar swoole \
    
     && docker-php-ext-enable xdebug yaf yar swoole grpc protobuf 
    
    

    以上我们的lnmp环境基本搭建完毕,下面我们针对Php解析做相关的配置

    修改services/nginx/nginx.conf,可根据需求自行修改

    user nginx;
    worker_processes auto;
    
    error_log /var/log/nginx/error.log warn;
    pid  /var/run/nginx.pid;
    
    
    events {
     worker_connections 1024;
    }
    
    
    http {
     include  /etc/nginx/mime.types;
     default_type application/octet-stream;
    
     log_format main '$remote_addr - $remote_user [$time_local] "$request" '
          '$status $body_bytes_sent "$http_referer" '
          '"$http_user_agent" "$http_x_forwarded_for"';
    
     access_log /var/log/nginx/access.log main;
    
     sendfile  on;
     #tcp_nopush  on;
    
     keepalive_timeout 65;
    
     #gzip on;
    
     include /etc/nginx/conf.d/*.conf;
    }
    
    

    修改services/nginx/conf.d目录下文件

    该目录是各个项目的配置文件,可根据需求配置单个或多个服务

    server {
     listen  80;
     server_name localhost;
    
     #charset koi8-r;
     #access_log /var/log/nginx/host.access.log main;
    
      #root /usr/share/nginx/html;
     root /www;
     index index.php index.html index.htm;
    
    
     #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 /usr/share/nginx/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   html;
      fastcgi_pass 101.11.11.10: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;
     #}
    }
    
    

    启动服务

    cd php && docker-compose up --build -d

    上述的步骤根据网速的docker的配置执行时间个不相同,因为php中编译了些许扩展,也可根据自身需求做响应的删减
    通过浏览器访问http://127.0.0.1:81,如果看到了phpinfo的输出信息,那么恭喜你,你的lnmp环境已经部署完成

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

    上一篇:Nginx配置跨域请求Access-Control-Allow-Origin * 详解
    下一篇:在Linux上识别同样内容的文件详解
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    docker 搭建lnmp环境的方法步骤 docker,搭建,lnmp,环境,的,