从零开始学习Docker- PHP环境搭建(Windows环境)

2022-10-11 20:19:56 206 0
魁首哥

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的 镜像 中,然后发布到任何流行的 Linux Windows 操作系统的机器上,也可以实现 虚拟化 。容器是完全使用 沙箱 机制,相互之间不会有任何接口。

配置PHP开发环境主要包含PHP、Nginx、Mysql或者MariaDB。

第一步:安装Docker

windows下安装docker非常简单这里就不详细说明了。

安装包下载地址:

第二步:安装Nginx

 //安装docker官方的nginx Images
docker pull nginx  

创建一个Nginx容器,

1、映射端口号80到8080、443到443

2、挂载nginx默认(/usr/share/nginx/html)项目路径到本地D盘下的D:/project/html

3、挂载nginx配置文件默认(/etc/nginx/cond.f/)路径到本地D盘下的D:/project/cond.f

 docker run \ 
--name nginx  \
-p 8080:80  \
-p 443:443  \
-v D:/project/html:/usr/share/nginx/html  \ 
-v D:/project/cond.f:/etc/nginx/cond.f 		\ 
-d  \ 
nginx  

第三步:安装PHP-FPM

 docker pull php:fpm  

创建一个PHP-FPM容器

 docker run \ 
--name php-fpm \ 
-p 9000:9000 \ 
-v D:/project/html:/var/www/html \ 
-d \ 
php:fpm  

-d # 表示在一直在后台运行容器
-p 9000:9000 # 对端口进行映射,将本地8081端口映射到容器内部的80端口
–name # 设置创建的容器名称
-v # 将本地目录(文件)挂载到容器指定目录(/var/www/html/是PHP容器默认的项目地址)

第四步:安装MySQL

 docker pull mysql  

创建一个mysql容器

 docker run \ 
--name mysql \ 
-p 3306:3306 \ 
-e MYSQL_ROOT_PASSWORD=123456 \ 
-d \ 
mysql  

-p 3306:3306 :映射容器服务的 3306 端口到宿主机的 3306 端口,外部主机可以直接通过 宿主机ip:3306 访问到 MySQL 的服务。

-e MYSQL_ROOT_PASSWORD=123456:设置 MySQL 服务 root 用户的密码。

第五步:配置nginx配置文件

 server {
    listen       80;
    listen  [::]:80;
    server_name  localhost;
    autoindex on;
    location / {
      	//因为该路径已经挂在到了本地D:/project/html
      	//所以只需要把项目代码放在的d:/project/html下面就行了
        root   /usr/share/nginx/html;
        index  index.html index.htm index.php;
    }
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
    location ~ \.php$ {
        //因为该路径已经挂在到了本地D:/project/html
      	//所以只需要把项目代码放在的d:/project/html下面就行了
        root           /var/www/html;
        fastcgi_pass   172.17.0.1:9000;
        fastcgi_index  index.php;
      	//这个地方也需要修改
        fastcgi_param  SCRIPT_FILENAME  /var/www/html$fastcgi_script_name;
        include        fastcgi_params;
    }
}  

第六步:通过浏览器正常访问就行了。

收藏
分享
海报
0 条评论
206
上一篇:C#实现 调用百度网盘API实现批量转存百度网盘 下一篇:Java企业级项目实战就业课程视频教程下载

本站已关闭游客评论,请登录或者注册后再评论吧~

忘记密码?

图形验证码