歡迎關注我的微信公衆號: 小哈學Java, 文末分享阿里 P8 高級架構師吐血總結的 《Java 核心知識整理&面試.pdf》資源連接!!nginx
我的網站: https://www.exception.site/docker/docker-install-nginx面試
本節中,咱們將學習如何經過 Docker 快速安裝&搭建 Ngnix, 爲您的服務添加反向代理功能。docker
docker pull nginx:alpine
PS:我這裏用的是 alipne 輕量級的鏡像.bash
下載完成後,經過 docker images 命令檢查一下鏡像是否下載成功:微信
docker run -d --name nginx nginx:alpine
-d
: 之後臺方式運行鏡像;—name
: 指定容器的名稱爲 nginx;命令執行完成後,經過 docker ps
命令確認一下容器是否啓動成功。確認成功後,再訪問一下 80
端口,看看 nginx 服務是否啓動成功:架構
複製運行中 nginx 相關配置文件到宿主機的指定路徑下:學習
# 複製名稱爲 nginx 容器中 /etc/nginx/nginx.conf 文件夾到宿主機的 /docker/nginx 路徑下 docker cp nginx:/etc/nginx/nginx.conf /docker/nginx # 複製名稱爲 nginx 容器中 /etc/nginx/conf.d 文件到宿主機的 /docker/nginx 路徑下 docker cp nginx:/etc/nginx/conf.d /docker/nginx
複製完成後,查看指定路徑的配置文件,以下:網站
先經過命令 ifconfig
命令獲取 docker0
網卡的 ip 地址:代理
PS: 由於我須要反向代理的服務部署在本機的 Docker 容器中,因此用的這個 IP,若是你用的外網其餘地址,可自行修改。日誌
接下來,在 conf.d/default.config
中添加反向代理相關配置:
proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://172.17.0.1:8090;
先刪除以前啓動的 nginx 容器:
docker rm -f nginx
成功後,回到配置文件的主目錄,執行:
docker run -d \ -p 80:80 \ --name nginx \ -v /docker/nginx/nginx.conf:/etc/nginx/nginx.conf \ -v /docker/nginx/conf.d:/etc/nginx/conf.d \ -v /docker/nginx/logs:/var/log/nginx \ nginx:alpine
參數說明:
-p 80:80
:將容器的 80 端口映射到主機的 80 端口;-v /docker/nginx/nginx.conf:/etc/nginx/nginx.conf
:將容器中的 /etc/nginx/nginx.conf 文件掛載到宿主機中的 /docker/nginx/nginx.conf 文件;-v /docker/nginx/conf.d:/etc/nginx/conf.d
:將容器中 /etc/nginx/conf.d 目錄掛載到宿主機中的 conf.d 目錄下;-v /docker/nginx/logs:/var/log/nginx
:將容器中的 /var/log/nginx 目錄掛載到宿主機中的 /docker/nginx/logs 目錄下, 用以查看 Nginx 日誌;運行命令成功後,直接訪問公網 IP 的 80 端口,看看是否可以方向代理到 8090 端口的 Spring Boot 服務上:
OK! 大工告成。
最近在網上發現一個不錯的 PDF 資源《Java 核心知識&面試.pdf》分享給你們,不光是面試,學習,你都值得擁有!!!
獲取方式: 關注公衆號: 小哈學Java, 後臺回覆資源,既可免費無套路獲取資源連接,下面是目錄以及部分截圖:
重要的事情說兩遍,關注公衆號: 小哈學Java, 後臺回覆資源,既可免費無套路獲取資源連接 !!!