newrelic/php-daemonNew Relic PHP Daemon 作为 PHP Agent 与 New Relic 数据收集器(collector)之间的代理,用于减少网络流量并提升被监控应用的响应时间。若 Daemon 未运行,PHP Agent 将无法向 New Relic 报告数据。
该镜像仅包含 Daemon 组件,并非一站式解决方案。如需在同一容器中安装 Agent 和 Daemon,需参考 官方文档。目前官方未提供包含 Agent 的镜像,下文将指导如何配置 Agent/应用容器与 Daemon 协同工作。
注意:Agent 与 Daemon 之间传输的数据未加密,建议仅在私有网络中部署两者的连接。
适用于 Docker 环境中运行的 PHP 应用,需通过 New Relic 监控性能数据,且需采用 Agent 与 Daemon 分离部署架构的场景。典型适用条件:
Daemon 容器需与安装了 PHP Agent 的应用容器配合使用。PHP Agent 通过 TCP 协议(默认端口 31339)向 Daemon 发送数据,Daemon 汇总后转发至 New Relic。
拉取镜像后,启动 Daemon 容器的基本命令如下:
bashdocker run --name <容器名称> -d newrelic/php-daemon
<容器名称> 替换为自定义容器名称(如 newrelic-php-daemon)应用容器需安装 PHP Agent 并配置指向 Daemon 容器的地址。
newrelic.daemon.address=<daemon-container-ip>:31339)示例参考:PHP Agent 与 Daemon 容器配置示例
通过 docker exec 命令访问运行中的 Daemon 容器:
bashdocker exec -it <容器名称> sh
通过 docker logs 命令查看 Daemon 运行日志:
bashdocker logs <容器名称>
如需使用自定义配置文件(如调整日志级别、代理地址等),可通过 -v 参数挂载本地配置文件至容器,并通过 -c 参数指定 Daemon 加载路径。
bashdocker run --name <容器名称> \ -v /本地路径/newrelic.cfg:/etc/newrelic/newrelic.cfg \ -d newrelic/php-daemon newrelic-daemon -c /etc/newrelic/newrelic.cfg
/本地路径/newrelic.cfg:本地自定义配置文件的绝对路径-c /etc/newrelic/newrelic.cfg:指定 Daemon 加载容器内的配置文件配置项参考:Daemon 配置文件说明
以下为包含 Daemon 和应用容器的 docker-compose.yml 示例(假设应用容器已预装 PHP Agent):
yamlversion: '3' services: newrelic-daemon: image: newrelic/php-daemon container_name: newrelic-php-daemon restart: always # 如需自定义配置,添加 volumes 挂载配置文件 # volumes: # - ./newrelic.cfg:/etc/newrelic/newrelic.cfg # command: newrelic-daemon -c /etc/newrelic/newrelic.cfg php-app: build: ./path/to/app # 应用容器构建上下文 container_name: php-app restart: always depends_on: - newrelic-daemon # 确保 Daemon 先启动 environment: - NEW_RELIC_LICENSE_KEY=<your-license-key> - NEW_RELIC_APP_NAME=<your-app-name> # 配置 Agent 连接 Daemon(具体方式取决于应用容器的 Agent 配置方式) # 例如在 PHP 配置文件中设置:newrelic.daemon.address=newrelic-daemon:31339


manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务