色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

使用Docker實現Nginx反向代理

瀏覽:10日期:2023-08-07 20:16:02
目錄1.首先安裝好Dokcer,這里不再贅述2.Docker安裝Nginx容器2.1首先需要創建Nginx配置文件,之后完成掛載2.2重新啟動nginx容器2.3瀏覽器輸入http:ip:9002訪問,發現是nginx首頁,安裝成功3.安裝Tomcat鏡像4.配置Nginx文件5.拓展

本機是在CentOS7上面進行操作的

1.首先安裝好Dokcer,這里不再贅述2.Docker安裝Nginx容器2.1首先需要創建Nginx配置文件,之后完成掛載

啟動前需要先創建Nginx外部掛載的配置文件( /home/nginx/conf/nginx.conf)之所以要先創建 , 是因為Nginx本身容器只存在/etc/nginx 目錄 , 本身就不創建 nginx.conf 文件當服務器和容器都不存在 nginx.conf 文件時, 執行啟動命令的時候 docker會將nginx.conf 作為目錄創建 , 這并不是我們想要的結果 。

# 創建掛載目錄mkdir -p /home/nginx/confmkdir -p /home/nginx/logmkdir -p /home/nginx/html# 生成容器docker run --name nginx -p 9001:80 -d nginx

然后將nginx中的配置文件復制到外部環境

# 將容器nginx.conf文件復制到宿主機docker cp nginx:/etc/nginx/nginx.conf /home/nginx/conf/nginx.conf# 將容器conf.d文件夾下內容復制到宿主機docker cp nginx:/etc/nginx/conf.d /home/nginx/conf/conf.d# 將容器中的html文件夾復制到宿主機docker cp nginx:/usr/share/nginx/html /home/nginx/# 刪除正在運行的nginx容器docker rm -f nginx2.2重新啟動nginx容器docker run -p 9002:80 --name nginx -v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /home/nginx/conf/conf.d:/etc/nginx/conf.d -v /home/nginx/log:/var/log/nginx -v /home/nginx/html:/usr/share/nginx/html -d nginx:latest

命令介紹:

–name nginx 啟動容器的名字-d 后臺運行-p 9002:80 將容器的 9002(后面那個) 端口映射到主機的 80(前面那個) 端口-v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf 掛載nginx.conf配置文件-v /home/nginx/conf/conf.d:/etc/nginx/conf.d 掛載nginx配置文件-v /home/nginx/log:/var/log/nginx 掛載nginx日志文件-v /home/nginx/html:/usr/share/nginx/html 掛載nginx內容nginx:latest 本地運行的版本\ shell 命令換行2.3瀏覽器輸入http:ip:9002訪問,發現是nginx首頁,安裝成功3.安裝Tomcat鏡像

下載tomcat8

docker run -d -p 8080:8080 --name mytomcat8 billygoo/tomcat8-jdk8

然后進行訪問,如果訪問不到,原因是

新版tomcat的/bin/bash目錄下有webapps和webapps.dist兩個目錄webapps里面沒有任何東西 total為0,實際有東西的是webapps.dist目錄下rm -rf webapps #刪除webapps文件夾mv webapps.dist webapps #改名為webapps

重啟tomcat進行訪問,發現可以訪問到了

4.配置Nginx文件

效果:訪問http://ip:9002/可以看到tomcat的首頁

原效果:訪問http://ip:9002/看到的是nginx的首頁

cd /home/nginx/conf

在http下面添加如下代碼:

server{?????? #監聽的端口 本例中9002監聽nginx80端口,所以這里寫80?????? listen 80;?????? #字符格式?????? charset utf-8;?????? #當前的服務器ip?????? server_name ip;?????? location / {????????? #要代理去哪個服務器的ip以及端口????????? proxy_pass http://ip:8080;????????? #被代理服務器返回默認的響應頭中的location頭域以及refresh頭域數值????????? proxy_redirect default;?????? }}

重啟nginx

docker restart nginx

訪問http://ip:9002/可以看到tomcat的首頁

5.拓展

要達到的效果:

1.再創建兩個tomcat容器,和上面一樣進行配置,一個為8081端口,一個為8082端口

2.在這兩個tomcat里創建不同的目錄,里面放一個html文件

3.配置nginx

4.訪問http://ip/edu/a.html訪問到的是8081的html

5.訪問http://ip/vod/a.html訪問到的是8082的html

#創建好兩個tomcat容器后,進入容器docker exec -it 容器ID /bin/bashcd webappsmkdir edu #8081端口的容器創建這個,8082的創建名為vod的目錄vim a.html#如果沒有vim則安裝一個,其他方法也行,搞個html進去就行apt-get updateapt-get install vim

a.html 里簡單寫個<h1>端口號</h1>就行,只是看效果

重啟這幾個tomcat容器,訪問發現成功

最后配置nginx配置文件

http下面添加:

server{ #監聽的端口 listen 9001; #字符格式 charset utf-8; #當前的服務器ip server_name ip; location ~ /edu/ { #要代理去哪個服務器的ip以及端口 proxy_pass http://ip:8081; #被代理服務器返回默認的響應頭中的location頭域以及refresh頭域數值 proxy_redirect default; } location ~ /vod/ { #要代理去哪個服務器的ip以及端口 proxy_pass http://ip:8082; #被代理服務器返回默認的響應頭中的location頭域以及refresh頭域數值 proxy_redirect default; }}

重啟nginx,訪問,發現成功。

ps 這個8001是我寫錯了,看效果就行

到此這篇關于使用Docker實現Nginx反向代理的文章就介紹到這了,更多相關Docker Nginx反向代理內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Nginx
相關文章:
主站蜘蛛池模板: 亚洲免费视频在线观看 | 亚洲精品自拍 | 一级一黄在线观看视频免费 | 加勒比日本道 | 欧美一级片在线观看 | www.日本在线观看 | 日韩成人在线视频 | 亚洲天堂视频在线免费观看 | 亚洲精品在线免费 | 国产一精品一aⅴ一免费 | 国产成年网站v片在线观看 国产成人aa在线视频 | 中国美女一级看片 | 久久成人免费 | 亚洲欧美人妖另类激情综合区 | 在线观看免费国产 | 日本三级香港三级人妇99 | 国产乱码精品一区二区三区四川人 | 美女扒开腿让男人桶爽免费动态图 | 日本精品视频一区二区三区 | 日美三级| 毛片在线观看视频 | 亚洲精品视频久久久 | 免费中国一级啪啪片 | 成人 欧美 | 国产精品久久久影院 | 日本在线亚州精品视频在线 | 成人性动漫高清免费观看网址 | 男同黄网站 | 最新理论三级中文在线观看 | 男女性高清爱潮视频免费观看 | 韩国19禁主播裸免费福利 | 欧美成人黄色网 | 国产一区二区精品在线观看 | 波多野结衣视频在线观看地址免费 | 亚洲欧美日韩另类精品一区二区三区 | 杨幂丝袜国产福利视频 | 欧美一区二区三区免费高 | 成人9久久国产精品品 | 91精品免费久久久久久久久 | 曰本女人色黄网站 | 欧美视频一区二区三区四区 |