Kubernetes 是跨主机集群运行运用程序支配的最佳办法。该办理方案许可您自动化运用程序容器的支配、扩展和管理。为了更轻松地支配和管理 Kubernetes 集群中的运用程序容器,您可以利用 Helm 图表。就像Dockerfile包含有关如何在运行的容器中构建图像的解释一样,图表定义了运用程序将如何支配在 Kubernetes 中。它们指定工具定义、做事、依赖项、pod 数量等。
第一步是获取运用程序源代码、Dockerfile和docker-compose.yml文件,并将它们用作创建自定义 Helm 图表以在 Kubernetes 集群中自动支配运用程序的出发点。运用程序支配并运行后,本指南还将磋商如何修正源代码以发布新的运用程序版本,以及如何利用 Helm CLI 在 Kubernetes 中实行滚动更新。
要在 PHP-FPM 中创建您自己的运用程序并利用 Helm 将其支配到 Kubernetes 上,您常日会遵照以下步骤:

要开始该过程,请确保您有权访问运用程序源代码。当前示例的运用程序代码存储在 Git 存储库中。按照以下步骤获取运用程序源代码:
克隆存储库。这将克隆示例存储库并使其成为当前目录:git clone https://github.com/bitnami/tutorials cd tutorials/phpfpm-k8s/
在运用程序代码文件夹中,您将看到一个名为phpminiadmin.php的文件。这是一个用于访问和管理 MySQL 数据库的小型 PHP 运用程序,我们将用作示例运用程序。请随意利用任何其他 PHP 运用程序。
警告
以下步骤必须在tutorials/phpfpm-k8s/文件夹中实行。
第 2 步:构建 Docker 镜像源代码已包含此示例所需的Dockerfile和docker-compose.yml文件。将app-code/docker-compose.yml文件中的 USERNAME 占位符更换为您的 Docker ID。当您打开docker-compose.yml文件时,您可以看到如何为 MariaDB、Nginx 和我们的 PHP-FPM 运用程序定义做事,以及用于创建数据库的环境变量。
利用以下命令构建图像。请记住将 USERNAME 占位符更换为您的 Docker ID:docker build . -t USERNAME/phpfpm-app:0.1.0
运行docker-compose up命令以创建和启动容器:
docker-compose -f app-code/docker-compose.yml up
通过在默认浏览器中输入http://localhost/phpminiadmin.php检讨运用程序是否正常运行。要登录到运用程序,您必须先连接到数据库。单击“高等设置”链接并输入以下信息。然后,单击“运用”。数据库用户名:mini密码:mini数据库名称:miniMySQL主机:mariadb端口:3306
登录后,您该当会看到默认的运用程序页面:
通过实行以下命令检讨已在本地存储库中创建的图像:
docker images | grep -E 'fpm|mariadb|nginx'
恭喜!
您的 PHP 运用程序已成功支配到 Kubernetes 上!
作为开拓职员,您会理解您的运用程序将来可能须要新功能或缺点修复。要发布新的 Docker 镜像,您只需实行几个基本步骤:变动运用程序源代码、重修并在您选择的容器注册表中重新发布镜像。将新映像发布推送后,您须要更新 Helm。
按照以下解释完成运用程序更新过程:
在docker-compose/app目录下,将version.php中的版本号修正为0.1.1。保存文件。在docker-compose/docker-compose.yml文件中,将版本号变动为 0.1.1 并通过运行docker-compose up命令重修映像。docker-compose up
提示
在实行下一步之前,请确保您已登录 Docker Hub。运行docker login命令以访问您的帐户(如果适用)。
按照与步骤 3中相同的步骤发布新图像,但利用新版本号。请记住将 USERNAME 占位符更换为您的 Docker ID:docker push USERNAME/phpfpm-app:0.1.1
切换到kubernetes目录,个中包含 Helm 文件。编辑values.yaml文件以将当前图像标签更换为新标签:
helm upgrade phpfpm .
helm history phpfpm .
每次您想要更新 Docker 映像和 Helm 图表时,请按照这些步骤操作。