Windows10下dnmp环境搭建

/ 0评 / 0

安装MySQL

  1. 仓库找到相应的镜像
  2. 在命令行中输入以下命令
// 拉取镜像
docker pull mysql:5.7
// 启动容器
docker run -p 3306:3306 --name mysql5.7 -d -v D:\dnmp\mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7

注释:   
--name mysql5.7 -- 容器名称  
D:\dnmp\mysql:/var/lib/mysql -- 冒号前面是本地路径,冒号后面是容器中的路径【默认不动】
  1. 进入容器
docker exec -it mysql5.7 /bin/bash

安装PHP

  1. 仓库找到相应的镜像
  2. 在命令行中输入以下命令
// 拉取镜像
docker pull php:7.2-fpm
// 启动容器
docker run --name  php-fpm7.2 -p 9000:9000 -v D:\dnmp\www:/www -d php:7.2-fpm

注释:
D:\dnmp\www:/www -- 冒号前面是本地路径(项目目录),冒号后面是容器中的路径【默认不动】
  1. 进入容器安装PDO扩展
docker exec -it php-fpm7.2 /bin/bash
cd /usr/local/bin/
docker-php-ext-install pdo pdo_mysql

注意: php要连接docker中运行的mysql是不能用localhost,127.0.0.1来连接的,因为每个docker运行容器的localhost、127.0.0.1都是自己容器本身,不是mysql容器,需要修改成母机 IP,或者是mysql容器名称。php中连接的 mysql host填写mysql 不用 localhost 或127.0.0.1

安装Nginx

  1. 仓库找到相应的镜像
  2. 在命令行输入以下命令
// 拉取镜像
docker pull nginx:latest
// 启动容器
docker run --name nginx -p 80:80 -v D:\dnmp\www:/usr/share/nginx/html:ro -v  D:\dnmp\nginx\conf\conf.d:/etc/nginx/conf.d:ro -d nginx

注释:
D:\dnmp\www:/usr/share/nginx/html:ro -- 本地项目路径:容器项目路径:ro 【此处是映射关系,照样修改即可,ro指同步】
D:\dnmp\nginx\conf\conf.d:/etc/nginx/conf.d:ro -- 本地项目路径:容器项目路径:ro 【此处是映射关系,照样修改即可,ro指同步】
  1. Nginx配置文件
server {
    listen       80;
    server_name  jingyi.com;

    location / {
        // 项目根目录,注意目录结构
        root   /usr/share/nginx/html/public;
        index  index.html index.htm index.php;

        if (!-e $request_filename) {
            rewrite  ^(.*)$  /index.php?s=/$1  last;
            break;
        }
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        // 项目根目录,注意目录结构
        root   /usr/share/nginx/html/public;
    }

    location ~ \.php$ {
        fastcgi_pass   php:9000;
        fastcgi_index  index.php;
        // 项目根目录,注意目录结构
        fastcgi_param  SCRIPT_FILENAME  /www/public/$fastcgi_script_name;
        include        fastcgi_params;
    }
}

发表评论

电子邮件地址不会被公开。 必填项已用*标注