我有這個Dockerfile:
FROM nginx:latest
COPY devops/nginx_proxy.conf /etc/nginx/conf.d/default.conf
EXPOSE 8080
和一個devops/nginx_proxy.conf:
server {
listen 8080;
client_max_body_size 32M;
underscores_in_headers on;
}
運行 Dockerfiledocker run -p 8080:80 test然后使用 進行測驗curl http://localhost/,我看到這個錯誤:
curl: (7) Failed to connect to localhost port 80: Connection refused
更奇怪的是,curl http://localhost:8080/回傳這個:
curl: (52) Empty reply from server
為什么我會收到這些錯誤?
uj5u.com熱心網友回復:
使用 Docker,您可以使用該選項將容器埠系結到主機埠。-p
一般規則
docker run -p HOST_PORT:CONTAINER_PORT
將容器8080埠系結到宿主機的80
docker run -p 80:8080 test
未系結到主機的埠(即 -p 80:80 而不是 -p 127.0.0.1:80:80)可從外部訪問
系結限制訪問localhost的埠
docker run -p 127.0.0.1:80:8080 test
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/457919.html
