mirror of
https://gitee.com/ulthon/ulthon_admin.git
synced 2026-08-30 20:55:32 +08:00
在 docker-dev/docker-dev-sync/docker-serve/full 四个模式中集成 XHProf 性能分析能力,默认不启用(--profile xhprof 按需开启),零侵入不改 业务代码和 run.sh。 核心组件: - source/docker/xhprof-bootstrap.php: 采集器初始化(auto_prepend_file) - source/docker/xhgui-config.php: XHGui 认证配置(Basic Auth)+ PDO 存储 - 各 Dockerfile: 安装 PECL xhprof 扩展 + php-profiler 到 /opt/xhprof/ - 各 docker-compose: 新增 xhgui 服务(profiles: xhprof),端口 8142 存储方案:PDO MySQL(复用现有 MySQL),避免 MongoDB PHP 驱动兼容性问题。 docker-dev/docker-dev-sync 开箱即用;docker-serve/full 需配置 XHGUI_PDO_DSN。 认证:HTTP Basic Auth,默认 admin/xhgui123,环境变量可覆盖。 采集控制:XHPROF_ENABLE 环境变量 + cookie _profiler 强制触发 + 1% 采样。 Dockerfile.base 同步新增 xhprof 扩展(框架作者需重建推送基础镜像)。
41 lines
1.8 KiB
Docker
41 lines
1.8 KiB
Docker
FROM php:8.2-fpm-bookworm
|
|
|
|
RUN rm -rf /etc/apt/sources.list.d/* \
|
|
&& echo "deb http://mirrors.ustc.edu.cn/debian/ bookworm main contrib non-free non-free-firmware" > /etc/apt/sources.list \
|
|
&& echo "deb http://mirrors.ustc.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware" >> /etc/apt/sources.list \
|
|
&& echo "deb http://mirrors.ustc.edu.cn/debian-security bookworm-security main contrib non-free non-free-firmware" >> /etc/apt/sources.list
|
|
|
|
RUN apt-get update
|
|
|
|
# 安装 nginx
|
|
RUN apt-get install -y nginx
|
|
|
|
ADD --chmod=0755 https://nexus.hl7.top:1243/repository/github-raw-proxy/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/
|
|
|
|
# 配置代理
|
|
RUN sed -i 's|aomedia.googlesource.com|nexus.hl7.top:1243/repository/raw-aomedia.googlesource.com|g' /usr/local/bin/install-php-extensions
|
|
RUN sed -i 's|chromium.googlesource.com|nexus.hl7.top:1243/repository/raw-chromium.googlesource.com|g' /usr/local/bin/install-php-extensions
|
|
RUN sed -i 's|https://github.com|https://nexus.hl7.top:1243/repository/github-raw-proxy|g' /usr/local/bin/install-php-extensions
|
|
|
|
RUN install-php-extensions pdo_mysql
|
|
RUN install-php-extensions gd
|
|
RUN install-php-extensions fileinfo
|
|
RUN install-php-extensions opcache
|
|
RUN install-php-extensions redis
|
|
RUN install-php-extensions event
|
|
RUN install-php-extensions imagick
|
|
RUN install-php-extensions zip
|
|
RUN install-php-extensions pcntl
|
|
RUN install-php-extensions xhprof
|
|
|
|
# 清理默认 Nginx 配置
|
|
RUN rm /etc/nginx/sites-available/default /etc/nginx/sites-enabled/default
|
|
|
|
# 安装 Composer
|
|
COPY --from=composer:2 /usr/bin/composer /usr/local/bin/composer
|
|
RUN chmod +x /usr/local/bin/composer
|
|
RUN composer config -g repos.packagist composer https://nexus.hl7.top:1243/repository/composer-proxy/
|
|
|
|
# 设置工作目录
|
|
WORKDIR /var/www/html
|