【问题标题】:socket: address family not supported by protocol套接字:协议不支持的地址族
【发布时间】:2021-04-20 06:43:16
【问题描述】:

CentOS 7

Docker 版本 20.10.6,构建 370c289

我尝试像这样运行图像:

docker run -d --name sonarqube -p 9000:9000 -v sonarqube-conf:/opt/sonarqube/conf -v sonarqube-data:/opt/sonarqube/data -v sonarqube-logs:/opt/sonarqube/logs -v sonarqube-extensions:/opt/sonarqube/extensions sonarqube

但得到错误:

docker: Error response from daemon: driver failed programming external connectivity on endpoint sonarqube (asfsfdsfdsfdsfdsfdsfds): Error starting userland proxy: listen tcp6 [::]:9000: socket: address family not supported by protocol.

【问题讨论】:

  • 您的 Centos 主机上似乎没有启用 ipv6。

标签: docker centos7


【解决方案1】:

这个blog post讨论问题和解决方案:

出于某种原因,IPv6(提示是 tcp6)搞砸了。问题是我从一开始就在这台主机上禁用了 IPv6。主要是因为对路由和互联网可访问性的一些担忧(我家里有一个正式的 IPv6 子网)。

在您的情况下,这是适用于我的容器的解决方案,我遇到了同样的问题。将主机端口替换为主机局域网IPv4地址(我在下面sn-p中使用的是172.16.18.93)和端口:

docker run -d --name sonarqube -p 172.16.18.93:9000:9000 -v sonarqube-conf:/opt/sonarqube/conf -v sonarqube-data:/opt/sonarqube/data -v sonarqube-logs:/opt/sonarqube/logs -v sonarqube-extensions:/opt/sonarqube/extensions sonarqube

【讨论】:

  • 绑定到-p 0.0.0.0:9000:9000 也可以。
【解决方案2】:

我找到了解决办法。

安装 Docker 版本 20.10.5

 E.g. from repo:
sudo yum install docker-ce-20.10.5 docker-ce-cli-20.10.5 containerd.io

现在问题已经解决了。

【讨论】:

    猜你喜欢
    • 2013-02-04
    • 1970-01-01
    • 2020-04-23
    • 2013-12-20
    • 1970-01-01
    • 1970-01-01
    • 2018-09-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多