PHP 微服务实现 001 容器化

作为系列的开篇,本文先介绍 PHP + Docker 的应用

赞助商

0.传统

最简单的 LNMP Demo 就是浏览器打开 127.0.0.1 能看到 phpinfo 的信息。

在一个初始的系统中,你实现这个 Demo 需要多久?

  • LNMP 一键安装包

  • yum、apt 包管理工具安装,其实也是源码包安装,不过开发者把文件打包到一起了

  • 手动编译安装,高级一点的话写一个 shell py 脚本,再高级一点自己做一个 rpm deb

1.Docker

第一次学习 Docker,你会敲下 $ docker run ... 来运行一个容器。

LNMP 架构需要 nginx mysql php-fpm redis 4 个容器,一个一个手工 run 是不是太麻烦。

于是你写了一个 shell 脚本来控制。

再后来你接触到 docker compose,可以很方便的一键运行 LNMP。

需要你做的就是两步 新建 PHP 项目 新增 NGINX 配置文件

2.Kubernetes

生产环境怎么编排 LNMP

  • 多节点、跨节点

  • 数据放到哪里

  • 配置文件

  • 密钥

Kubernetes 所有对象可以通过 YAML 文件进行管理。然后我们创建了一堆的 YAML 文件。

怎么管理。所以出现了 K8s 的包管理工具

3.Helm

在 CI 服务器执行 helm install 即可完成部署。

微服务

如何理解微服务。

软件运行在 Docker 之上就是微服务了吗。

khs1994 wechat
微信扫码赞赏我的文章
0%