亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 網站 > Nginx > 正文

使用Nginx實現服務器中多容器共存的方法

2024-08-30 12:29:56
字體:
來源:轉載
供稿:網友

背景

有一臺騰訊的Linux云主機,在服務器上部署了一個docker(稱為ServiceDocker,名稱為sign,下同),ServiceDocker內部使用了80、443、3306端口,分別映射到宿主機(云主機)的相同端口(即80、443、3306)。

ServiceDocker中安裝了XAMPP,在此基礎上部署了掃碼簽到小程序的服務器。ServiceDocker的80和443端口分別提供http和https服務,3306為MySQL數據庫的端口。

ServiceDocker綁定了域名sign.famend.cn。

目標

云主機中的一個ServiceDocker占用了80、443端口,如果想在主機中再部署一臺服務器對外服務,就不能使用80和443端口了。

我們的目標是在主機中可以部署多個ServiceDocker,每個ServiceDocker綁定各自的域名,對外提供服務,保證80和443端口可用。

思路

修改ServiceDocker的端口映射,把ServiceDocker端口80、443分別映射到主機的89、449端口,這樣主機的80、443端口釋放出來了。

釋放出來的80和443端口供Nginx使用。安裝帶Nginx的docker(稱為NginxDocker,名稱為mynginx,下同)。NginxDocker內部使用端口80、443,分別映射到主機的80和443端口。

NginxDocker用來做反向代理。當有訪問請求時,讀取Nginx配置后,不同的URL定向到各自對應的Docker。例如:訪問http://sign.famend.cn:80,則自動映射到http://sign.famend.cn:89。

實現步驟

1. 修改ServiceDocker的端口映射,釋放80和443端口。

Docker沒有提供命令修改端口,從網上我找到了2種方法。

方法1:先停止容器,再將容器打包成鏡像,接著運行新的鏡像。在運行新的鏡像時指定新的端口。使用的命令如下:

#先停止容器 docker stop containerA #將容器commit成為一個鏡像 docker commit containerA newImageB #運行容器 docker run -p 8080:8080 -p 8081:8081 -v /home/data/:/home/data/ -dt newImageB 

方法2:先停止容器,接著停止容器服務,然后修改容器配置文件,最后啟動容器服務、啟動容器。步驟如下:

①停止ServiceDocker(ServiceDocker的名稱為sign),停止docker服務。

sudo docker stop sign sudo service docker stop 

②使用 docker ps -a 命令找到要修改容器的 CONTAINER ID。

③運行 docker inspect 【CONTAINER ID】 | grep Id 命令。

④執行 cd /var/lib/docker/containers 命令令進入找到與 Id 相同的目錄。

在執行cd 命令時如果提示permission denied,可以先執行 sudo -s。

進入id對應的目錄后,打開文件hostconfig.json。

找到80端口的映射,如下:

"80/tcp": [ { "HostIp": "0.0.0.0", "HostPort": "80" }]  把 "HostPort": "80" 修改成 "HostPort": "89" , 如下 "80/tcp": [ { "HostIp": "0.0.0.0", "HostPort": "89" }]

修改之前,ServiceDocker內部的80端口映射為主機的80端口;修改之后,ServiceDocker內部的80端口映射為主機的89端口。

稍加說明,有文章(參考資料中的2、3)提到還需要修改config.v2.json,親測不需要。這個文件在啟動ServiceDocker時會自動修改。

⑤啟動docker服務,然后啟動ServiceDocker(名稱為sign)。

sudo service docker start sudo docker start sign 

方法(1)和方法(2)都可以,我選用了方法(2)。

在執行完方法(2)之后,打開瀏覽器驗證,提示“網站無法訪問”。

初步估計docker中的服務器沒有啟動,運行命令:

sudo /opt/lampp/lampp stop sudo /opt/lampp/lampp start 

運行stop的時候,發現apache 沒有啟動,可能是修改了80端口的緣故。

在執行start之后,打開瀏覽器驗證http://sign.famend.cn:89和https://sign.famend.cn:449,成功訪問。

修改Docker端口的方法并不復雜,如果docker以后的版本能夠提供相應命令,相信會方便很多。

順便,運行 crontab -l 查看ServiceDocker中的定時任務是否啟動,如果沒啟動,運行 service cron start 啟動定時任務。

下一步,配置NginxDocker反向代理,讓http://sign.famend.cn:80和https://sign.famend.cn:443也能成功訪問。

2. 配置NginxDocker反向代理。

①下載nginx,并運行它。

docker container run /  -d /  -p 80:80 /  -p 443:443 /  --rm /  --name mynginx /  nginx 

②配置nginx的配置文件。

mkdir nginx-files docker container cp mynginx:/etc/nginx . mv nginx conf vi conf/nginx.conf 

在nginx.conf中,添加如下反向代理信息。

server{  listen     443 ssl;  server_name   sign.famend.cn;  ssl_certificate /etc/nginx/ssl/sign.famend.cn/1_sign.famend.cn_bundle.crt;  ssl_certificate_key /etc/nginx/ssl/sign.famend.cn/2_sign.famend.cn.key;   location / {   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_set_header X-Forwarded-Proto $scheme;   proxy_pass http://sign.famend.cn:89/;  } }  server{  listen     80;  server_name   famend.cn sign.famend.cn;  location / {   proxy_set_header HOST $host;   proxy_set_header X-Real-IP $remote_addr:89;   proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;   proxy_set_header X-Forwarded-Proto $scheme;   proxy_pass http://sign.famend.cn:89/;  } } 

對于443端口,需要使用ssl_certificate和ssl_certificate_key。在ServiceDocker中證書使用的LetsEncrypt的SSL證書,每90天更新一次。

SSL證書的來源:一種方法,可以讓它們共享LetsEncrypt的SSL證書。除此之外,在騰訊注冊的域名,騰訊免費提供SSL證書,有效期為1年。

為了簡便,我直接使用了騰訊的SSL證書,當然,一年之內,必須在過期之前更新證書。

③停止mynginx,然后重啟它。

docker container run /  --name mynginx /  --volume "$PWD/conf":/etc/nginx /  -p 80:80 /  -p 443:443 /  -d /  nginx 

這次,去掉 --rm 參數,以便停止運行的時候保留容器。

至此,配置完成。

驗證

瀏覽器中分別打開

sign.famend.cn:80 sign.famend.cn:89 sign.famend.cn:449 sign.famend.cn:443 

都能正常訪問。當然,打開449和443時候,可以發現兩個URL使用的證書不一樣。449是LetsEncrypt提供的,有效期90天;443來自騰訊(頒發機構TrustAsia),有效期1年。

當然,ServiceDocker中的另外一個網站famend.cn,也可以訪問:

famend.cn:80 
famend.cn:89

總結

以上所述是小編給大家介紹的使用Nginx實現服務器中多容器共存的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VEVB武林網網站的支持!


注:相關教程知識閱讀請移步到服務器教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美日韩亚洲天堂| 日本欧美黄网站| 日韩在线欧美在线| 91午夜理伦私人影院| 欧美理论电影网| 日产日韩在线亚洲欧美| 日韩电视剧免费观看网站| 欧美成人中文字幕| 91精品在线观| 一区二区日韩精品| 亚洲精品视频在线播放| 久久久成人的性感天堂| 亚洲欧美在线播放| 97视频在线观看网址| 久久亚洲精品视频| 国产精品一区二区三区毛片淫片| 欧美亚洲视频在线看网址| 欧美日韩国产成人| 国产精品亚发布| 国产精品mp4| 日韩av电影国产| 在线观看成人黄色| 国产精品丝袜白浆摸在线| 97超级碰在线看视频免费在线看| 久久高清视频免费| 91精品啪aⅴ在线观看国产| 久久精品男人天堂| 久久黄色av网站| 欧美激情中文字幕乱码免费| 亚洲精品suv精品一区二区| 久久精品免费电影| 国产精品私拍pans大尺度在线| 国产成人精品综合久久久| 亚洲天堂av综合网| 九九久久精品一区| 国产精品视频一| 精品一区二区三区电影| 91麻豆国产语对白在线观看| 不卡av日日日| 欧美国产高跟鞋裸体秀xxxhd| 国产专区精品视频| 97精品伊人久久久大香线蕉| 日韩一区二区av| 97国产精品人人爽人人做| 欧美视频免费在线| 91精品久久久久久久久不口人| 久久香蕉国产线看观看av| 热re91久久精品国99热蜜臀| 亚洲网站视频福利| 伊人久久综合97精品| 国产一区二中文字幕在线看| 懂色av中文一区二区三区天美| 日韩午夜在线视频| 琪琪第一精品导航| 欧美大尺度电影在线观看| 欧美精品videosex极品1| 亚洲第一二三四五区| 91精品国产精品| 狠狠色狠狠色综合日日五| 超碰日本道色综合久久综合| 日韩亚洲第一页| 日本一区二区三区四区视频| 久久久久久国产精品久久| 成人免费看片视频| 久久亚洲成人精品| 精品夜色国产国偷在线| 欧美又大又粗又长| 成人久久久久久久| 国产美女精品视频免费观看| 国产精品天天狠天天看| 亚洲国产中文字幕在线观看| 98视频在线噜噜噜国产| 久久精品99久久香蕉国产色戒| 69av视频在线播放| 久久久久久久影视| 91伊人影院在线播放| 亚洲xxxx在线| 欧美激情视频三区| 国外日韩电影在线观看| 久久久国产成人精品| 欧美精品在线视频观看| 91成人免费观看网站| 精品日韩中文字幕| 色一区av在线| 久久九九亚洲综合| 久久精品91久久香蕉加勒比| 日韩中文字幕国产| 欧美日韩一区二区在线播放| 91精品久久久久久久久不口人| 久久久噜久噜久久综合| 中文字幕亚洲欧美在线| 一区二区在线免费视频| 在线播放国产一区中文字幕剧情欧美| 亚洲一级一级97网| 国产欧美va欧美va香蕉在| 国产美女扒开尿口久久久| 欧美激情乱人伦一区| 亚洲第一中文字幕| 欧美激情一区二区三级高清视频| 国模gogo一区二区大胆私拍| 国产精品自拍小视频| 日韩黄在线观看| 亚洲网站视频福利| 北条麻妃一区二区三区中文字幕| 91久久久久久久久久久| 日韩在线观看成人| 亚洲国产欧美一区二区三区久久| 成人av番号网| 日韩精品视频免费| 国产人妖伪娘一区91| 精品中文字幕在线2019| 久久国产精品久久国产精品| 97在线观看视频| 欧美大片免费观看| 国产主播精品在线| 日韩一区二区福利| 理论片在线不卡免费观看| 91美女片黄在线观看游戏| 欧美午夜久久久| 亚洲一区国产精品| 久久久久久久久爱| 欧美成人在线免费| 日韩av在线免播放器| 久久久久久久久久久亚洲| 亚洲成人av片在线观看| 国产中文字幕91| 日韩视频永久免费观看| 欧美黄色免费网站| 91国产精品视频在线| 久久久久久国产精品美女| 96pao国产成视频永久免费| 日韩电影免费观看在线观看| 日韩av一区二区在线观看| 亚洲成人亚洲激情| 亚洲精品v天堂中文字幕| 国产91|九色| 亚洲精品电影久久久| 国产午夜精品视频| 亚洲精品免费av| 久久青草福利网站| 色与欲影视天天看综合网| 国产精品日日摸夜夜添夜夜av| 久久手机免费视频| 欧美高清自拍一区| 亚洲美女在线观看| 亚洲欧洲国产伦综合| 88国产精品欧美一区二区三区| 中文字幕精品久久| 亚洲一区二区三区久久| 97视频免费在线看| 亚洲精选一区二区| 亚洲美女动态图120秒| 九色精品美女在线| 精品欧美国产一区二区三区| 亚洲欧洲日产国产网站| 亚洲精品免费一区二区三区| 福利二区91精品bt7086| 欧美国产在线视频| 亚洲自拍偷拍色片视频| 欧美日产国产成人免费图片| 日韩精品在线观看一区二区| 亚洲精品按摩视频| 国产精品久久久久免费a∨大胸| 亚洲人成自拍网站|