Docker搭建php开发环境

1. 第一步拉去需要的镜像(根据个人需要, 获取对应版本)

2. 创建自己的docker网络, 默认桥接模式

➜  ~ docker network create mynet
32c681d46c036dd9450e45f8930d7520f47f9fbb2df83c6348752d56683bcee5
➜  ~ docker network ls
NETWORK ID     NAME      DRIVER    SCOPE
4a45750545f0   bridge    bridge    local
31d09483ca15   host      host      local
32c681d46c03   mynet     bridge    local
bacb36f06567   none      null      local

3. 在本地创建对应需要的文件夹, 方便后期修改对应配置文件

4. 安装mysql

docker run --name mysql 
--restart=always ( Docker 重启时容器也跟随启动)
--privileged=true (Docker 为容易内的 root 用户赋予真正的 root 权限,不然会提示 log 目录权限不足)
-p 3306:3306 
-v /docker/mysql/conf:/etc/mysql/conf.d (将配置目录挂载到容器内的配置目录)
-v /docker/mysql/data:/var/lib/mysql (将数据存储目录挂载到容器内的出局存储目录)
-v /docker/mysql/log:/var/log/mysql (将日志目录挂载到容器内的日志目录)
-e MYSQL_ROOT_PASSWORD=root 
--net mynet (自己创建的docker网络) 
-d mysql

5. 安装nginx

docker run --name nginx -p 80:80 -d -v /Desktop/Docker/lnmp/nginx/conf:/etc/nginx/conf.d -v /Desktop/Docker/lnmp/nginx/www:/usr/share/nginx/html -v /Desktop/Docker/lnmp/nginx/log:/var/log/nginx --net mynet nginx

安装完之后 打开浏览器 http://localhost:端口号  测试

6. 安装 php

  1. 先创建一个php容器用于cp配置文件

docker cp php-fpm:/usr/local/etc/php-fpm.d/www.conf docker/php/conf/www.conf
docker cp php-fpm:/usr/local/etc/php/php.ini-production docker/php/conf/php.ini

  2. 删除刚才创建的 php 容器

  3. 重新创建并挂在

docker run --name php74 -p 9000:9000 -d -v /Docker/lnmp/php/www:/var/www/html -v /Docker/lnmp/php/conf/www.conf:/usr/local/etc/php-fpm.d/www.conf -v /Docker/lnmp/php/conf/php.ini:/usr/local/etc/php/php.ini --net mynet php:7.4.33-fpm

7. nginx配置文件 

/docker/nginx/conf/default.conf 创建default.conf文件
server {
        listen       80;
        server_name  localhost;
        root /var/www/html;
        charset utf-8;

        access_log  /var/log/nginx/access.log  main;
        error_log  /var/log/nginx/error.log;

        location / {
            index  index.html index.htm index.php;
            try_files $uri $uri/ /index.php?$query_string;
        }
        #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   html;
        }

        location ~ \.php$ {
            fastcgi_index index.php;
            #php-fpm容器名:端口号
            fastcgi_pass   php-fpm:9000;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include       fastcgi_params;
        }

        location ~ /\.ht {
            deny  all;
        }
}

8. 新建phpinfo测试

在/docker/php/www下创建index.php

<?php
phpinfo();

打开localhost查看是否显示正常

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值