在 Docker 中运行 Blackfire 与 PHP Swoole 时出现问题

问题描述 投票:0回答:1

有人成功地将 Blackfire 与 Swoole 一起使用吗?我已经尝试设置了几天,但没有成功。

我在 PHP-CLI Swoole Dockerfile 中调用以下脚本:

#!/usr/bin/env bash

# @see https://blackfire.io/docs/up-and-running/installation

set -e

apt-get update
apt-get install -y gnupg --no-install-recommends

# Configure the Debian Repository
wget -q -O - https://packages.blackfire.io/gpg.key | apt-key add -
echo "deb http://packages.blackfire.io/debian any main" | tee /etc/apt/sources.list.d/blackfire.list
apt-get update

# Install and Configure the Agent
echo "$(date '+%Y-%m-%d %H:%M:%S,%3N') $(tput bold)$(tput setaf 4)INFO$(tput sgr0) Install and Configure the Agent."
apt-get -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" install blackfire
blackfire agent:config --server-id=MY-SERVER-ID --server-token=MY-SERVER-TOKEN
/etc/init.d/blackfire-agent restart

# Install the PHP Probe
echo "$(date '+%Y-%m-%d %H:%M:%S,%3N') $(tput bold)$(tput setaf 4)INFO$(tput sgr0) Install the PHP Probe."
apt-get -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" install blackfire-php

# Clear
rm -r /var/lib/apt/lists/*
mkdir -p /var/run/blackfire

主管会议:

[supervisord]
user = root

[program:blackfire-agent]
command = /usr/bin/blackfire agent:config --server-id=MY_BLACKFIRE_SERVER_ID --server-
token=MY_BLACKFIRE_SERVER_TOKEN
user = root
autostart = true
autorestart = true
stdout_logfile = /proc/self/fd/1
stdout_logfile_maxbytes = 0
stderr_logfile = /proc/self/fd/1
stderr_logfile_maxbytes = 0

使用 blackfire curl 时出现错误消息:

reginato@reginato-Lenovo-IdeaPad-S145-15IWL:~/git/shark-tank$ docker-compose exec blackfire blackfire curl http://localhost:9501

WARNING: Some services (elk, redis) use the 'deploy' key, which will be ignored. Compose does not support 'deploy' configuration - use `docker stack deploy` to deploy to a swarm.

20/06 00:19:26 DEBUG     blackfire Reading client configuration file "/dev/null"
20/06 00:19:26 DEBUG     blackfire Retrieving signature
20/06 00:19:26 DEBUG     blackfire Sending request GET https://blackfire.io/api/v1/collab-tokens
20/06 00:19:28 DEBUG     blackfire Sending request POST https://blackfire.io/api/v1/signing
20/06 00:19:28 DEBUG     blackfire Fetching agent credentials
20/06 00:19:28 DEBUG     blackfire Sending request GET https://blackfire.io/api/v1/agents
20/06 00:19:28 DEBUG     blackfire Timespan enabled, launching preflight.

20/06 00:19:28 DEBUG     blackfire #################] 100%
Error while running command: exit status 7
php docker ubuntu swoole blackfire
1个回答
1
投票

老问题,但以防万一有人像我今天一样来到这里。

blackfire curl ...
返回的退出状态不是来自blackfire而是来自curl。

知道了这一点,退出代码 7 的意思是:

无法连接()到主机或代理。

(这是所有退出代码的列表:https://curl.se/libcurl/c/libcurl-errors.html

因此,对于这种特定情况,docker 机器可能无法到达

http://localhost

© www.soinside.com 2019 - 2024. All rights reserved.