docker-proxy - 尝试在 443 上绑定时启动用户级代理时出错

Posted

技术标签:

【中文标题】docker-proxy - 尝试在 443 上绑定时启动用户级代理时出错【英文标题】:docker-proxy - Error starting userland proxy while trying to bind on 443 【发布时间】:2016-11-25 19:34:55 【问题描述】:

我正在尝试在 Ubuntu 16.04 LTS 中使用 docker 安装 discourse,Apache 监听端口 80 和 443。

当我尝试午餐应用程序时,我收到以下错误:

启动现有容器 + /usr/bin/docker start app 来自守护进程的错误响应:驱动程序在端点应用程序上编程外部连接失败 (dade361e77fbf29f4d9667febe57a06f168f916148e10cc1365093d8f97026bb): 启动用户态代理时出错:listen tcp 0.0.0.0:443:listen: address 已在使用错误:无法启动容器:应用程序

因为我发现 docker-proxy 是试图在 443 上绑定的那个。

我该如何解决这个问题?

一些细节...

docker version
Client:
 Version:      1.11.2
 API version:  1.23
 Go version:   go1.5.4
 Git commit:   b9f10c9
 Built:        Wed Jun  1 22:00:43 2016
 OS/Arch:      linux/amd64

Server:
 Version:      1.11.2
 API version:  1.23
 Go version:   go1.5.4
 Git commit:   b9f10c9
 Built:        Wed Jun  1 22:00:43 2016
 OS/Arch:      linux/amd64


docker info
Containers: 1
 Running: 0
 Paused: 0
 Stopped: 1
Images: 4
Server Version: 1.11.2
Storage Driver: aufs
 Root Dir: /var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 25
 Dirperm1 Supported: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: null host bridge
Kernel Version: 4.4.0-28-generic
Operating System: Ubuntu 16.04 LTS
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 31.39 GiB
Name: sd-12345
ID: 6OLH:SAG5:VWTW:BL7U:6QYH:4BBS:QHBN:37MY:DLXA:W64E:4EVZ:WBAK
Docker Root Dir: /var/lib/docker
Debug mode (client): false
Debug mode (server): false
Registry: https://index.docker.io/v1/
WARNING: No swap limit support

【问题讨论】:

也许,停止 apache? 同样的问题,docker-proxy 监听 443 所以我不能在这个端口上运行任何其他进程 【参考方案1】:

也许,停止 apache? – vitr 2016 年 7 月 22 日在 2:56

^^^ 来自 vitr 的评论应该是接受的答案:

如果不先停止任何已经在使用该端口的服务,Docker 无法将容器内的服务代理到主机上的端口。

在这种情况下,必须使用 sudo service apache2 stop 等命令停止 Apache。

然后docker start app 可以运行,docker 应该不受阻碍地做它的事情。

查看相关问题:docker run -> name is already in use by container

【讨论】:

@webBer 这怎么不是问题的答案?【参考方案2】:

编辑/etc/docker/daemon.json 并添加:


    "userland-proxy": false

【讨论】:

以上是关于docker-proxy - 尝试在 443 上绑定时启动用户级代理时出错的主要内容,如果未能解决你的问题,请参考以下文章

"docker-proxy": executable file not found in $path

exec: "docker-proxy": executable file not found in $PATH

尝试使用 SSH over HTTP 连接时通过 [IP] 端口 443 重置连接

Linux端口反查进程

使用 SSL 443 而不是 3306 访问 rds MySql db

在端口443上运行WSO2 IS