https://github.com/easychen/fangphp
fangPHP is a docker based development env with php7 mysql redis and livereload
https://github.com/easychen/fangphp
Last synced: about 1 year ago
JSON representation
fangPHP is a docker based development env with php7 mysql redis and livereload
- Host: GitHub
- URL: https://github.com/easychen/fangphp
- Owner: easychen
- License: gpl-2.0
- Created: 2018-01-22T12:28:53.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2020-11-14T03:06:32.000Z (over 5 years ago)
- Last Synced: 2025-04-05T20:11:13.486Z (about 1 year ago)
- Language: PHP
- Size: 319 KB
- Stars: 85
- Watchers: 7
- Forks: 16
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# fangPHP
fangPHP is a docker based development env with php7 mysql redis and livereload
fangPHP 的目标是一个跨平台( Mac / Linux / Win )的 PHP 开发环境,主要用于教学。它解决的是:老师讲了,学生回去做的时候,不能复现例子,最后查出来是环境差异的问题。
## 安装和启动
分为三步
1. 安装 Docker( 这是我们的容器平台 )以及 Docker-compose( 这是我们编排容器的工具,Linux上需要单独安装 )
1. 启动 fangPHP 环境
1. 安装 Live-reload 插件
1. 使用说明
### 安装 Docker
不同的操作系统安装 Docker 的方式不同,以下做分别的讲解。
#### Windows用户
> Windows 因为版本差异、环境不同会遇到各种奇形怪状的问题,推荐大家直接安装 Ubuntu / Windows 双系统,然后在 Ubuntu 下进行开发,能节约很多时间。
首先,请[按此提示查看Windows的版本](https://jingyan.baidu.com/article/642c9d34032de3644a46f7bd.html)。
#### Win10 专业版和服务器版( Win10 的其他版本看后边 )
微软在 Win10 专业版、教育版和服务器版中,提供了 Hyper V 虚拟化技术,所以这部分用户可以安装最新的原生 Docker 客户端。
Docker 提供面向企业的付费版本(EE)和面向社区的免费版本(CE),我们使用CE。
[下载地址](https://download.docker.com/win/stable/Docker%20for%20Windows%20Installer.exe) [官方网站](https://www.docker.com/community-edition#/download)
安装时记得选中 git for windows ,这是我们检出代码时要用到的工具。
#### 其他 Windows 版本,包括 Win10 的家庭版等等
更新:Docker 原生版已经支持在 Win10 2004以后的版本安装,可参考: https://www.jdon.com/54526
以下方式已经不推荐。
```
由于没有容器化技术的支持,其他的 Windows 版本只能通过虚拟机的方案来实现。这时候我们需要用到 Docker ToolBox。
1. 下载页面 https://docs.docker.com/toolbox/toolbox_install_windows/
1. 安装(安装时如果没有安装 git windows 版,记得同时选上 )
1. 完成后,启动「 Docker Quickstart Terminal 」,进入命令行
1. 等待一段时间,按提示给予权限。最后会显示一个内网地址,一般是 192.168.99.100 。
原生 Docker 客户端的服务是启动在 127.0.0.1 上边的 , 为了保证环境的统一,我们将 192.168.99.100 的端口 映射到 127.0.0.1 上:
1. git clone https://github.com/easychen/fangPHP ( clone fangPHP 代码到本地 )
1. 以管理员身份运行 fangPHP 目录下的 port-remapping-for-toolkit-win.bat 启动以后挂着就行,不用的时候再点任意键关掉
1. 如果你的IP不是 192.168.99.100 , 请用编辑器打开 port-remapping-for-toolkit-win.bat , 将 192.168.99.100 替换为对应的 IP。
1. 因为 Windows 的一个 Bug( https://support.microsoft.com/en-us/help/555744 ),如果这个脚本不生效,请检查是否电脑是否安装了 IPV6MON.DLL
```
### Linux
按官方的安装提示进行安装,以下链接以 Ubuntu 为例,左侧菜单处可切换其他发行版。( 18.04 请参考[这篇文章](https://medium.com/devgorilla/how-to-install-docker-on-ubuntu-18-04-495216a16092) 需科学访问 )
https://docs.docker.com/install/linux/docker-ce/ubuntu/#install-docker-ce
注意 apt-get 里边的 docker-compose 版本过低,不要通过 apt-get install docker-compose 安装,可按以下命令安装
```
sudo curl -L https://github.com/docker/compose/releases/download/1.18.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose && sudo chmod +x /usr/local/bin/docker-compose
```
### Mac
Mac 系统可以使用原生的 Docker 客户端,[下载地址](https://download.docker.com/mac/stable/Docker.dmg) [官方网站](https://www.docker.com/community-edition#/download)
## 启动 fangPHP
进入命令行,选择一个用来存放代码的目录( 路径中不要包含中文,不然某些版本的 Docker 会出错 )
检出代码:
1. 运行 git 命令检出代码 `git clone https://github.com/easychen/fangPHP`
1. 进入代码目录 `cd fangPHP`
启动:
使用 Mac 和 Linux 的同学运行 `docker-compose up`
使用 Windows 的同学运行 `docker-compose.exe -f docker-compose.win.yaml up`
注意这里 Windows 使用了独立的配置,否则 MySQL 服务会无法启动。
```
报错备用方案:
Mac & Linux : 将 docker-composer.yaml 第4行 build: ./buildLNP 换成 image: hub.c.163.com/easychen/apncore:latest
Win:将 docker-composer.win.yaml 第4行 build: ./buildLNP 换成 image: hub.c.163.com/easychen/apncore:latest
```
添加测试 PHP 文件:
在 fangPHP 目录下,进入 `data/web` , 新建 `index.php` 文件,内容为:
`