Skip to content

弃用通知

此图像未被积极维护(且多年来一直如此)。强烈建议用户寻找替代方案。

快速参考

  • 由……维护
    Perforce 软件公司

  • 何处获取帮助:
    Docker 社区 Slack、服务器故障、Unix & Linux 或 Stack Overflow

支持的标签及相应的 Dockerfile 链接

不支持的标签

快速参考(续)

  • 在哪里提交问题:
    Zend 支持中心

  • 支持的架构:(更多信息)
    不支持的架构

  • 已发布的图像工件详细信息:
    仓库信息 仓库的 repos/php-zendserver/ 目录(历史)
    (图像元数据、传输大小等)

  • 图像更新:
    官方镜像仓库的 library/php-zendserver 标签
    官方镜像仓库的 library/php-zendserver 文件(历史记录)

  • 此描述的来源:
    文档库的 php-zendserver/ 目录(历史)

什么是 Zend Server?

Zend Server 是用于 PHP 移动和 Web 应用程序的集成应用平台。Zend Server 为您提供高可用的 PHP 生产环境,其中包括(除其他功能外)高度可靠的 PHP 堆栈、应用程序监控、故障排除以及全新的 Z-Ray。

借助 Z-Ray 提升你的开发

使用 Zend Server 的 Z-Ray 就如同戴上 X 光护目镜,在开发人员开发代码时毫不费力地让他们深入了解代码的运行方式——所有这些都无需改变他们的任何习惯或工作流程。借助 Z-Ray,开发人员可以立即了解其代码更改的影响,从而能够在代码进入生产环境之前很久就提高质量并解决问题。除了这种“左移”的明显好处——更好的性能、更少的生产问题和更快的恢复时间——使用 Z-Ray 也非常有趣!

实现持续交付

Zend Server 是实现持续交付的平台,它在整个应用程序交付周期中提供一致性、自动化和协作能力。有模式可将 Zend Server 与以下进行集成:Chef、Jenkins、Nagios、Vmware、Puppet。

额外资源

PHP-禅道服务器

这是一个支持集群的 Dockerized Zend Server 容器版本。借助 Docker 上的 Zend Server,您将在高可用的 PHP 生产环境中启动并运行您的 PHP 应用程序,该环境包括(除其他功能外)高度可靠的 PHP 堆栈、应用程序监控、故障排除以及创新的新技术——Z-Ray。Z-Ray 通过在工具栏中跟踪并显示关于构建其页面的各种元素如何执行的实时详细信息,为开发人员提供对其代码前所未有的可见性。

出于开发目的,我们为您提供有时间限制的试用许可证。对于生产使用,您必须按照使用部分下面的说明提供有效的 Zend Server 许可证。

使用情况

从 Docker-Hub 启动容器

Zend Server 在 [Docker-Hub] 上以 php-zendserver 共享。

单实例

要启动单个 Zend Server 实例,请执行:

    $ docker run php-zendserver
  • 您可以通过在“docker run”命令中添加“:”或“:-php<版本>”来指定 PHP 和 Zend Server 版本。
       for example: 
       $docker run php-zendserver:8.5-php5.6
    

可用版本:

  • Zend 服务器 8
  • Zend Server 9(含 PHP 7 GA)(默认版本)
  • Zend Server 2019 支持多 PHP 版本(7.1、7.2 和 7.3)
集群

要启动 Zend Server 集群,针对每个集群节点执行以下命令:

    $ docker run -e MYSQL_HOSTNAME=<db-ip> -e MYSQL_PORT=3306 -e MYSQL_USERNAME=<username> -e MYSQL_PASSWORD=<password> -e MYSQL_DBNAME=zend php-zendserver

自带许可证

要使用你自己的 Zend Server 许可证:$ docker run php-zendserver -e ZEND_LICENSE_KEY= -e ZEND_LICENSE_ORDER=

从 Dockerfile 启动容器

从包含此存储库克隆的本地文件夹中,执行以下命令以生成图像。将输出图像 ID:

    $ docker build .
来自自定义映像的单个实例

要启动单个 Zend Server 实例,请执行:

    $ docker run <image-id>

从自定义镜像创建集群

要启动 Zend Server 集群,请在每个集群节点上执行以下命令:

    $ docker run -e MYSQL_HOSTNAME=<db-ip> -e MYSQL_PORT=3306 -e MYSQL_USERNAME=<username> -e MYSQL_PASSWORD=<password> -e MYSQL_DBNAME=zend <image-id>

访问 Zend 服务器

一旦启动,容器将输出访问 PHP 应用程序和 Zend Server UI 所需的信息,包括自动生成的管理员密码。

端口转发(用于远程访问)

要远程访问容器,必须配置端口转发,无论是手动还是使用 Docker。例如,此命令将端口 80 重定向到端口 88,将端口 10081(Zend Server UI 端口)重定向到端口 10088:

    $ docker run -p 88:80 -p 10088:10081 php-zendserver
对于集群实例:

要启动 Zend Server 集群,您必须提供一个与 MySQL 兼容的数据库:

    $ docker run -p 88:80 -p 10088:10081 -e MYSQL_HOSTNAME=<db-ip> -e MYSQL_PORT=3306 -e MYSQL_USERNAME=<username> -e MYSQL_PASSWORD=<password> -e MYSQL_DBNAME=zend <image-id>

请注意,当运行多个实例时,只有一个实例可以绑定到一个端口。如果您正在运行一个集群,要么仅将端口重定向分配给一个节点,要么为每个容器分配一个不同的端口。

添加应用程序文件

通过将 GIT_URL 环境变量设置为仓库的 URL,可以自动从 Git 仓库拉取应用文件。或者,如果从 Dockerfile 构建镜像,将应用文件放置在“app/”文件夹中。

文件将被复制到容器的 /var/www/html 文件夹中,并在 Zend Server 中定义为默认应用程序。包含一个示例 index.html 文件。此功能在 Zend Server 8 及以上版本中可用。

环境变量

环境变量通过带有“-e”开关的运行命令传递。

可选环境变量:

要为 Zend Server 指定预定义的管理员密码,请使用:

  • ZS_ADMIN_PASSWORD(可直接保留英文,若硬要翻译可译为“ZS 管理员密码”)

从 Git URL 自动部署应用程序:

  • GIT 网址

用于集群操作的 MySQL 变量。对于节点正确加入集群,所有这些都是必需的:

  • MYSQL_HOSTNAME - MySQL 数据库的 IP 地址或主机名
  • MYSQL_PORT - MySQL 监听端口
  • MYSQL 用户名
  • MYSQL 密码
  • MYSQL_DBNAME - Zend Server 将用于集群操作的数据库名称(如果不存在则自动创建)。

要指定预购买的许可证,请使用以下环境变量:

  • ZEND 许可证密钥
  • ZEND_LICENSE_ORDER

通过将以下环境变量设置为“true”,将 Zend Server 设置为生产模式。默认情况下,Zend Server 被设置为“开发模式”,并启用 Z-Ray:

  • ZS_生产

最低要求

每个 Zend Server Docker 容器需要 1GB 的可用内存。

许可证

Perforce 软件公司

与所有 Docker 镜像一样,这些镜像可能还包含其他可能受其他许可证约束的软件(例如来自基础发行版的 Bash 等,以及所包含的主要软件的任何直接或间接依赖项)。

一些能够自动检测到的额外许可证信息可能会在 repo-info 存储库的 php-zendserver/ 目录中找到。

对于任何预构建镜像的使用,镜像用户有责任确保对此镜像的任何使用都符合其中包含的所有软件的任何相关许可证。