在Google Cloud Platfrom上启动docker映像时出现Userland代理错误

在Google Cloud Platfrom上启动docker映像时出现Userland代理错误,docker,google-cloud-platform,Docker,Google Cloud Platform,我正在尝试在我的一个GCP虚拟机上运行标准的nginx容器。当我跑的时候 docker run -it --rm -p 80:80 tiangolo/uwsgi-nginx-flask:python3.6 我得到以下错误: Error starting userland proxy: listen tcp 0.0.0.0:80: bind: address already in use 但是,它是我创建的一个干净的VM实例。在VM创建期间,我还检查了http端口,以确保端口80是打开的(我需

我正在尝试在我的一个GCP虚拟机上运行标准的nginx容器。当我跑的时候

docker run -it --rm -p 80:80 tiangolo/uwsgi-nginx-flask:python3.6
我得到以下错误:

Error starting userland proxy: listen tcp 0.0.0.0:80: bind: address already in use
但是,它是我创建的一个干净的VM实例。在VM创建期间,我还检查了http端口,以确保端口80是打开的(我需要添加https,但这是我的第一次部署测试)


图像确实在本地工作。我猜这似乎是一个谷歌云平台配置的问题。

我试图重现我的问题,但没有发现任何错误。以下是我采取的步骤

  • 首先,我在Google云平台上启动了一个Debian vm实例,并允许该vm实例的防火墙中传入http,以便我可以从外部访问该站点
  • 然后我在VM实例中安装了docker。我跟着
  • 之后,我确保在VM实例中http端口是空闲的。我使用了下面的命令。 netstat-an | egrep | Proto | LISTEN | 你可以查看链接
  • 此时,我发出了您提供的docker命令。 docker run-it-rm-p 80:80 tiangolo/uwsgi nginx烧瓶:蟒蛇3.6
  • 我没有得到任何错误,我可以访问nginx页面

    “使用Python 3.6的uWSGI Nginx Docker容器中的Flask中的Hello World(默认)”


    如果您使用相同的docker版本旋转一个新VM,您是否有相同的问题?你的虚拟机运行的是哪种映像?

    这是我自己的愚蠢错误。。抱歉问了这么多社区。。。 那么我做错了什么。。我通过网络客户端连接。。这意味着端口80已经在使用中。造成这一切破坏的是:(


    所以只需ssh,然后再试一次就可以了。

    也有同样的问题。只需通过其他端口上的web客户端进行ssh,问题就解决了。谢谢!