Mac+Docker+Phpstrom跑php的Phalcon 框架项目并xdebug成功

首先根据 docker化的Phalcon框架本地开发环境 在项目中配置到dockerfile, 完成这一步后其实phalcon项目就能跑起来了。

readme文件如下:

# docker化的Phalcon框架本地开发环境
  Phalcon是个C扩展,意味着注定搭建起本地开发环境要比其他非扩展型的PHP框架麻烦很多。
  更糟心的是,好几个项目,都需要运行,却使用着不同的框架版本和PHP版本...你本地搭建一个环境试试~
  本项的目的是让大家迅速搭建一个Phalcon项目,三分钟内开发环境搞定。
## 使用前提
  使用此项目需要你首先下载docker。docker具体使用情况请见官网 [docker](https://www.docker.com)
  使用步骤:
  + 找到某个项目的根目录下,运行:
    
    ```git clone https://github.com/i6448038/Phalcon_env.git docker```
  
  + ``cd docker``进入到docker目录下
    
    ```docker-compose up -d```
  
  完毕!喝杯茶等五分钟。。。然后打开``localhost``试试
  
## docker目录说明
  ``logs``目录下都是nginx运行的日志。
  ``settings``目录下是nginx的配置信息

## 镜像说明
  本项目目前的镜像有:
  + php-nginx 安装有php、Phalcon扩展和nginx的镜像
  + 代码存放在php-nginx 容器中,一进入容器就可看到代码。此容器和redis、mysql、mongo、memcached建立了连接。连接地址分别是``redis``、
  ``mysql``、``mongo``和``memcached``。(PS:假如想要访问redis,那么配置文件中redis的host地址就得写redis)
  + mysql mysql的root用户password是homestead,用户名是:homestead,密码是:secret,端口是:3306
  + redis 端口是6379
  + memcached 端口是11211
  + mongoDB 端口是 27137

## 配置说明
  + 代码存放在php-nginx 容器中,一进入容器就可看到代码。此容器和redis、mysql、mongo、memcached建立了连接。连接地址分别是``redis``、
   ``mysql``、``mongo``和``memcached``。(PS:假如想要访问redis,那么配置文件中redis的host地址就得写redis)
  + 假如想要同时启动多个项目,需要自己修改docker-compose.yml文件中的每一个的``container_name``容器名字,和``ports``端口号的前半部分,例如我项目名字叫hello,我可以改成:
    ```###########################################################
       #      MAINTAINER: Ryu Gou <376832293@qq.com>         #
       ###########################################################
       
       # PHP + NGINX Container #----------------------------------
       php-nginx:
         image: ryugou/jiyu_phalcon:2.0
         container_name: hello_php-nginx
         ports:
           - "80:80"
           - "443:443"  
         volumes:
           - ./settings/nginx:/etc/nginx/sites-available
           - ../:/var/www
           - ./logs/nginx:/var/log/nginx
         links:
           - mysql
           - redis
           - memcached  
         environment:
           - REDIS_PORT=6379
       
       # MySQL Container #----------------------------------------
       mysql:
         image: mysql:5.6
         container_name: hello_mysql
         ports:
           - "3306:3306"
         environment:
           MYSQL_ROOT_PASSWORD: homestead
           MYSQL_DATABASE: homestead
           MYSQL_USER: homestead
           MYSQL_PASSWORD: secret
       
       # Redis Container #----------------------------------------
       redis:
         image: redis:3.0
         container_name: hello_redis
         ports:
           - "6379:6379"
       
       # Memcached Container #---------------------------------
       memcached:
         image: memcached:1.4
         container_name: hello_memcached
         ports:
           - "11211:11211"
         mem_limit: 1g ```
      
      这样我就把每个容器的名字改为了前缀"hello",就避免了容器名字重复,同时,假如说有端口号占用,比方说redis,我只要把``ports``中的``- "6379:6379"``前半部分6379改为别的就可以了:
      ``- "63791:6379"``         

## 其他
  想要切换其他版本的Phalcon可以切一下git分之  
         
## xdebug
```apacheconf
# 定位到 php.ini 文件
find / -name php.ini
vim /etc/php/5.6/mods-available/xdebug.ini

zend_extension=xdebug.so
xdebug.remote_port=9001
xdebug.idekey=PHPSTORM
xdebug.remote_log=/tmp/xdebug.log
xdebug.remote_host=host.docker.internal
xdebug.remote_enable=1
xdebug.remote_connect_back=0

Xdebug 配置:
0. 根据readme文件配置php.ini 的xdebug信息

1. 定位到 php.ini 文件
find / -name php.ini
2. vim /etc/php/5.6/mods-available/xdebug.ini
3.增加配置
zend_extension=xdebug.so
xdebug.remote_port=9001
xdebug.idekey=PHPSTORM
xdebug.remote_log=/tmp/xdebug.log
xdebug.remote_host=host.docker.internal
xdebug.remote_enable=1
xdebug.remote_connect_back=0
  1. 配置servers
    在这里插入图片描述
    2.为phpstorm 配置docker
    在这里插入图片描述
  2. 配置phpstrom的 php
    在这里插入图片描述

参考文章

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值