Docker 是一款流行的開源容器化平臺,可用于構建,部署和運行應用程序。Docker 將應用程序及其依賴項打包到容器中,以便在任何地方無需更改就可以運行。
在 Docker 中,容器之間是相互隔離的,但容器內部的進程和文件系統是共享的。為了讓容器內的應用能夠與外界交互,我們需要將容器的端口映射到宿主機上。
$ docker run -p 8080:80 nginx
這個命令將 Docker 容器內的 80 端口映射到了宿主機的 8080 端口上。這意味著,當我們訪問宿主機的 8080 端口時,就會被轉發到 Docker 容器內部的 80 端口上。
另外,如果我們需要將多個端口映射到宿主機上,可以執行如下命令:
$ docker run -p 8080:80 -p 3000:3000 nginx
這個命令將 Docker 容器內的 80 端口映射到了宿主機的 8080 端口上,同時將 Docker 容器內的 3000 端口映射到了宿主機的 3000 端口上。
總結來說,Docker 的端口映射機制使得容器內的應用程序能夠與外界交互,從而方便我們在不同的環境中部署應用程序。