一、环境搭建
大家好,我是 crayxn。此次分享将带大家使用 php + swoole (hyperf) + grpc 完成简单的微服务,本文是受 kevwan (learnku.com/articles/64… 启发,感谢大佬们的分享感谢hyperf框架的兼容感谢swoole 才让php实现grpc微服务做到可能。 本次演示项目代码请自取 github.com/crayxn/hype…
基本要求
有一台装着docker的设备,啥平台都行哈。如何下载请自行google,本文以Windows搭载Docker Desktop 为例。
环境编排
编排文件参考 kevwan,服务注册由 etcd 改为 nacos(推荐)、consul 这边已经把环境相关文件放到项目中 github.com/crayxn/hype… ,请自取。大致包括以下内容,可自行更换调整。
- PHP 8.1 + swoole 5.1
- Redis、Mysql
- Prometheus
- Grafana
- Jaeger
- Nacos
- Consul
- DTM
目录结构
- code // 代码存放项目
- config // 部分镜像配置文件
- .env //环境变量文件
- docker-compose.yml // 编排文件
启动环境
记得先复制 github.com/crayxn/hype… 项目下的 .env.example 重命名为 .env 在docker-compose.yml所在目录下 执行 docker-compose up -d (compose 2.0 请使用 docker compose up -d) 执行前 请先确保 docker 启动了哦。 第一次需要下载镜像会相对比较慢,可以选择切换成阿里docker镜像源,如何切换请自行 google。若端口被占用请修改.env文件 调整对应端口。启动成功如下图:
访问PHP容器
也就是我们开发 启动hyperf 需要进入的容器 docker exec -it mall-php /bin/bash 如下图 已经成功进入了
小白须知:后续所有 要执行的命令行 必须在此容器中进行