docker nginx實(shí)現(xiàn)一個(gè)主機(jī)部署多個(gè)站點(diǎn)操作
在某站租賃的虛擬機(jī)快到期了,續(xù)費(fèi)得花200多,想到在阿里云新買(mǎi)的服務(wù)器,不如把這個(gè)也轉(zhuǎn)移過(guò)去。域名我就用真實(shí)的吧,大家別黑我網(wǎng)站就好了,謝謝各位了。
阿里云里面已經(jīng)用部署了一個(gè)站點(diǎn) 用域名 www.dcssn.com 就能直接訪(fǎng)問(wèn),我的想法是再用 www.xhxf119.com 指向這個(gè)主機(jī),根據(jù)域名的不同去訪(fǎng)問(wèn)不同的服務(wù)。
首先
域名解析都要指向這個(gè)主機(jī)的ip
然后
www.dcssn.com的服務(wù)開(kāi)啟8080端口,docker run -p 8080:80 weian
www.xhxf119.com的服務(wù)開(kāi)啟8081端口,docker run -p 8081:80 xinhua
用www.dcssn.com:8080 能正常訪(fǎng)問(wèn) www.xhxf119.com:8081也能正常訪(fǎng)問(wèn)
接下來(lái) 寫(xiě)nginx的配置文件
nginx.confworker_processes 1;events { worker_connections 1024;}http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { listen 80; server_name www.dcssn.com; location / { proxy_redirect off; 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://47.92.69.112:8080; } } server { listen 80; server_name www.xhxf119.com; location / { proxy_redirect off; 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://47.92.69.112:8081; } }}
然后把這個(gè)文件保存到/host/path/ 目錄下
docker run --name my-custom-nginx-container -v /host/path/nginx.conf:/etc/nginx/nginx.conf:ro -d -p 80:80 nginx
大概流程就是這樣了 就可以直接輸入 www.dcssn.com 或者 www.xhxf119.com 訪(fǎng)問(wèn)了

補(bǔ)充知識(shí):docker配置nginx支持多個(gè)子域名對(duì)應(yīng)不同的項(xiàng)目目錄
有機(jī)會(huì)要弄一個(gè)反向代理分發(fā)
具體的php與nginx配置請(qǐng)看本人博客里的搭建
cd /root/nginx/conf/conf.d
vim runoob-test-php.conf
runoob-test-php.conf文件內(nèi)容,其實(shí)就是子域名對(duì)應(yīng)目錄就行
server { listen 80; server_name www.liuyuanshan.top; location / { #proxy_pass http://106.52.36.65:80; root /usr/share/nginx/html; index index.php index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } location ~ .php$ { fastcgi_pass php:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www/html/$fastcgi_script_name; include fastcgi_params; }}server { listen 80; server_name message.liuyuanshan.top; location / { root /usr/share/nginx/html/message/; index index.php index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } location ~ .php$ { fastcgi_pass php:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www/html/message/$fastcgi_script_name; include fastcgi_params; }}server { listen 80; server_name wordpress.liuyuanshan.top; location / { root /usr/share/nginx/html/wordpress/; index index.php index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } location ~ .php$ { fastcgi_pass php:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www/html/wordpress/$fastcgi_script_name; include fastcgi_params; }}
重啟docker的nginx容器
docker restart ngixn
以上這篇docker nginx實(shí)現(xiàn)一個(gè)主機(jī)部署多個(gè)站點(diǎn)操作就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. IntelliJ IDEA安裝插件的方法步驟2. Docker 部署 Prometheus的安裝詳細(xì)教程3. idea重置默認(rèn)配置的方法步驟4. idea導(dǎo)入maven項(xiàng)目的方法5. IntelliJ IDEA設(shè)置自動(dòng)提示功能快捷鍵的方法6. idea設(shè)置代碼格式化的方法步驟7. IntelliJ IDEA調(diào)整字體大小的方法8. 通過(guò)Django Admin+HttpRunner1.5.6實(shí)現(xiàn)簡(jiǎn)易接口測(cè)試平臺(tái)9. idea打開(kāi)多個(gè)窗口的操作方法10. idea給項(xiàng)目打war包的方法步驟

網(wǎng)公網(wǎng)安備