在使用Docker 容器部署應(yīng)用程序時(shí),反向映射是一個非常重要的概念。它能夠讓我們在容器內(nèi)運(yùn)行的服務(wù)在主機(jī)上可以被訪問到。
假設(shè)我們在容器內(nèi)啟動了一個Nginx服務(wù)器,它監(jiān)聽容器內(nèi)部的80端口,同時(shí)我們希望在主機(jī)上可以通過http://localhost:8000來訪問該Nginx服務(wù)器。這時(shí)候我們就需要使用反向映射來實(shí)現(xiàn)。
$ docker run -d -p 8000:80 nginx
上面的命令會啟動一個Nginx容器,并將容器內(nèi)部的80端口映射到主機(jī)上的8000端口,這樣我們在主機(jī)上就可以通過http://localhost:8000來訪問容器內(nèi)運(yùn)行的Nginx服務(wù)器了。
需要注意的是,反向映射只能將容器內(nèi)的端口映射到主機(jī)上,不能將主機(jī)上的端口映射到容器內(nèi)。因此在使用反向映射時(shí),需要特別注意容器內(nèi)部使用的端口號。