mac下laradock环境搭建及配置Xdebug(phpstorm)

前言:最近学习laravel,在mac上想搭建环境,看了laravel学院的介绍,有几种环境可供选择,一种是homestead,一种是valet,还有就是laradock。因为之前有稍微那么一点点了解一下docker是什么,所有就想用docker来搭建环境。

  1. 安装docker
    docker官网,打开官网,拉到页面最底部
    mac下laradock环境搭建及配置Xdebug(phpstorm)_第1张图片
    mac下laradock环境搭建及配置Xdebug(phpstorm)_第2张图片
    我的电脑为mac,所以下载mac版本,会自动判断操作系统类型进行下载。
    安装docker比较简单,下载完之后直接双击文件打开,拖动进行安装,和平时安装软件一样
    安装之后在命令行中输入:docker --version 查看是否安装成功
    mac下laradock环境搭建及配置Xdebug(phpstorm)_第3张图片
    可以自己配置一下docker的源,这里就不在进行赘述。
    mac下laradock环境搭建及配置Xdebug(phpstorm)_第4张图片
  2. 安装composer工具
    php依赖包管理工具,mac使用homebrew进行安装
    brew install composer
  3. laradock搭建
    在任意目录下(最好新建一个空目录,便于管理),执行以下命令:
    git clone https://github.com/Laradock/laradock.git

    等待下载完成(因为是github,下载速度比较慢)
    安装laravel安装程序
     

    composer global require laravel/installer

    创建软连接:
     

    #在.zshrc中添加
    alias laravel=/Users/hd/.composer/vendor/bin/laravel
    #执行source ~/.zshrc

    创建一个在之前的目录中创建一个laravel项目
     

    laravel new stonelalala

    当前目录下的文件夹情况:

    进入laradock文件夹,执行命令:
     

    cp env-example .env

    可以打开.env文件查看一下
    在该文件中可以进行各种软件的版本配置、软件的设置等,每次修改之后都要对镜像进行重新编译。比如你修改了mysql的版本(默认下载最新的版本),修改之后,进行重新编译
     

    docker-compose build mysql

    站点配置:
    进入laradock/nginx/sites,拷贝一份laravel.conf.example为stonelalala.conf
     

    cp laravel.conf.example stonelalala.conf

    mac下laradock环境搭建及配置Xdebug(phpstorm)_第5张图片
    然后打开stonelalala.conf进行配置
    容器构建:
    编译修改过的软件。
    打开laravel项目的.env配置文件
    修改
    DB_HOST=mysql
    REDIS_HOST=redis
    修改完之后,运行你的容器

    docker-compose up -d nginx mysql workspace php-fpm


    下载镜像过程比较缓慢,需要耐心等待!
    运行完成之后,修改一下hosts文件

    然后在浏览器中输入stonelalala.test,就可以看到熟悉的laravel画面
    mac下laradock环境搭建及配置Xdebug(phpstorm)_第6张图片

  4. 配置Xdebug
    修改laradock的.env文件:
    修改一下两个字段的值
     

    WORKSPACE_INSTALL_XDEBUG=true
    
    PHP_FPM_INSTALL_XDEBUG=true

    然后打开laradock/PHP-FPM/xdebug.ini以及laradock/workspace/xdebug.ini,修改或添加一下内容:
     

    xdebug.remote_connect_back=1
    xdebug.remote_port=9000
    xdebug.idekey=PHPSTORM
    xdebug.remote_enable=1
    xdebug.remote_host=docker.for.mac.localhost
    xdebug.remote_connect_back=0
    
    xdebug.remote_log="/var/www/xdebug_logs/xdebug_docker.log"
    
    xdebug.remote_autostart=0
    xdebug.remote_enable=0
    xdebug.cli_color=0
    xdebug.profiler_enable=0
    xdebug.profiler_output_dir="~/xdebug/phpstorm/tmp/profiling"
    
    xdebug.remote_handler=dbgp
    xdebug.remote_mode=req
    
    xdebug.var_display_max_children=-1
    xdebug.var_display_max_data=-1
    xdebug.var_display_max_depth=-1

    两个文件的配置是一样的。
    修改完之后重新编译一下容器
     

    docker-compose build workspace php-fpm

    编译完成之后重启容器
     

    #关闭所有容器
    docker-compose down
    #启动需要的容器
    docker-compose up -d nginx mysql redis

    打开phpstorm,进入Preferences->Language & Frameworks->PHP->Servers,新建一个 server,这里取名 laradock
    点击右上角,然后根据如下图片进行配置
    mac下laradock环境搭建及配置Xdebug(phpstorm)_第7张图片
    mac下laradock环境搭建及配置Xdebug(phpstorm)_第8张图片
    mac下laradock环境搭建及配置Xdebug(phpstorm)_第9张图片
    最后,在需要打断点的地方打断点,测试是否开启成功:
    mac下laradock环境搭建及配置Xdebug(phpstorm)_第10张图片

  5. 到此,laradock就算部署完成了,在PHPSTORM中的调试功能也开启成功了!第一次使用docker,还有很多不熟悉的地方,有错误或不足之处,望指出!谢谢~

你可能感兴趣的:(PHP,mac,docker,docker,laradock,laravel)