簡體   English   中英

Google Compute Engine:無法通過 http 請求訪問正在運行的 Docker 容器

[英]Google Compute Engine: Can't access running Docker container through http request

所以我在 GCE 上有這個正在運行的容器,來自外部的所有請求都無法連接。

如果我執行docker ps --all我得到:

CONTAINER ID   IMAGE                       COMMAND                  CREATED        STATUS        PORTS                                       NAMES
c516555621f0   hydra-parser:hydra-parser   "/bin/sh -c 'gunicor…"   11 hours ago   Up 11 hours   0.0.0.0:8000->8000/tcp, :::8000->8000/tcp   nervous_neumann

而且似乎端口也打開了。

imarquezc@hydra-parser:~$ sudo netstat -tulpn | grep LISTEN
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      557/sshd            
tcp        0      0 0.0.0.0:8000            0.0.0.0:*               LISTEN      32722/docker-proxy  
tcp6       0      0 :::22                   :::*                    LISTEN      557/sshd            
tcp6       0      0 :::8000                 :::*                    LISTEN      32729/docker-proxy 

另外,如果我 curl 到 localhost/0.0.0.0 它工作正常

imarquezc@hydra-parser:~$ curl localhost:8000
<h1>EUD Extractor</h1>

其他信息:

我已經在谷歌的控制台上啟用了 http 和 https 流量。

還添加了default-allow-http, http-server, https-server .network 標簽

我的 Dockerfile 看起來像:

FROM ubuntu:focal

RUN apt-get -y update
RUN apt-get install poppler-utils python3 python3-pip -y


COPY requirements.txt /
RUN pip install --upgrade pip
RUN python3
RUN pip install -r requirements.txt

ADD . /

RUN python3 ./stanza_downloader.py

CMD gunicorn --bind 0.0.0.0:8000 main:app

我使用以下命令運行容器:

docker run -p 8000:8000 hydra-parser:hydra-parser

我缺少什么? 請幫忙!

您使用的標簽不啟用端口 8000。它們啟用端口 80 和 443。

為端口 8000 創建 VPC 防火牆入口規則。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM