gpt4 book ai didi

docker - GCP 云上的 Logstash Docker 运行 : Failed to find a usable hardware address from the network interfaces

转载 作者:行者123 更新时间:2023-12-02 21:30:44 24 4
gpt4 key购买 nike

我将 PubSub 与在 GCP Cloud Run 上运行的 Logstash 自定义图像耦合,该图像会将消息输出到 Elastic Cloud 配置。
我目前在 Cloud Run 上遇到了一些我似乎无法修复的错误:
无法从网络接口(interface)中找到可用的硬件地址
Dockerfile 看起来像这样:

FROM docker.elastic.co/logstash/logstash:7.9.0
ADD pipeline/ /usr/share/logstash/pipeline/
ADD config/ /usr/share/logstash/config/
RUN bin/logstash-plugin install logstash-input-google_pubsub
RUN chown -R logstash:root /usr/share/logstash/config
RUN ls -al /usr/share/logstash/config/
EXPOSE 5000
配置文件如下所示:
input {

google_pubsub {

project_id => "${PROJECT_ID}"
topic => "${PUBSUB_TOPIC}"
subscription => "logstash-sub"
create_subscription => false
}
}
output {
elasticsearch {
hosts => "${HOSTS}"
user => "${USERNAME}"
password => "${PASSWORD}"
index => "${INDEX}"
}
stdout {
}
}
如果有人帮助解决这个问题需要任何其他数据,请告诉我。我是处理 Logstash 的新手。
关于我所看到的一些额外信息:
Container 运行良好,设置了一个已经从 Pub/Sub 获取输入的管道,然后大约一分钟后出现上述错误,我收到了 [logstash.runner] SIGTERM。关闭。容器部署失败之前的消息。

最佳答案

您正在端口 5000 上公开 Logstash 容器。在 Cloud Run :

The container must listen for requests on 0.0.0.0 on the port to which requests are sent. By default, requests are sent to 8080.Inside Cloud Run container instances, the value of the PORT environment variable always reflects the port to which requests are sent. It defaults to 8080.


但是,您可以 configure Cloud Run 将请求发送到您的首选端口(即 5000)。您可以通过 gcloud 进行此操作命令:
gcloud run services update SERVICE --port 5000

关于docker - GCP 云上的 Logstash Docker 运行 : Failed to find a usable hardware address from the network interfaces,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64518045/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com