zabbix-web-nginx-pgsql 镜像启动失败,报错 socket() [::]:8080 failed

目录

关于 nginx: [emerg] socket() [::]:8080 failed (97: Address family not supported by protocol) 问题

解决过程:

1、把容器中 nginx 的配置文件取出到本地,删除文件有有关[::]的配置行

2、基于这两个文件创建 configmap

3、把configmap挂载到pod中


关于 nginx: [emerg] socket() [::]:8080 failed (97: Address family not supported by protocol) 问题

在用 helm 安装 zabbix-server 和 zabbix-web 的时候,对于 zabbix-web-nginx-pgsql 这个镜像启动出了一些问题,一直有如下报错
describe显示


logs 显示

nginx: [emerg] socket() [::]:8080 failed (97: Address family not supported by protocol)

解决过程:

先是去它的镜像页(https://hub.docker.com/r/zabbix/zabbix-web-nginx-pgsql)找到了它的项目github的地址 https://github.com/zabbix/zabbix-docker

在 issues 这里我搜索 nginx 8080 发现有人也遇到了类似的问题

有个回答是这样的: 

大致问题应该就是nginx的配置有问题,文件中有 ::80这种配置,但是本地网络不支持ipv6,所以需要重新从 github(或者直接从pod/容器) 中复制配置文件并在原始配置上删除类似 [::]8080的这些配置,然后使用卷重新挂载

大致过程如下:

1、把容器中 nginx 的配置文件取出到本地,删除文件有有关[::]的配置行

kubectl cp zabbix-zabbix-web-89c5b8f54-k9n5g:/etc/zabbix/nginx.conf nginx.conf

kubectl cp zabbix-zabbix-web-89c5b8f54-k9n5g:/etc/zabbix/nginx_ssl.conf nginx_ssl.conf

vim nginx.conf

vim nginx_ssl.conf

2、基于这两个文件创建 configmap

kubectl create configmap zabbix-zabbix-web-nginx --from-file=nginx.conf --from-file=nginx_ssl.conf  -n mn

创建好了之后,修改deployment zabbix-zabbix-web 的 yaml 文件,把这个configmap挂载到pod里去,挂载路径和从pod里copy的路径一致

3、把configmap挂载到pod中

可以参考官方文档根据自己的配置修改:Configure a Pod to Use a ConfigMap | Kubernetes

我修改的大致如下,可以只需要添加一个 nginx.conf ,另一个ssl配置应该可能没有用到,nginx没去加载。

kubectl edit deploy zabbix-zabbix-web -n mn

 保存自动启动之后就可以看到 Pod 已经变成 Runnning 状态了 

 然后做一个端口映射,就可以访问 zabbix 的 web 端了

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值