日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

使用nginx实现一个主机部署多域名指向不同docker项目

發布時間:2023/12/18 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用nginx实现一个主机部署多域名指向不同docker项目 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
使用nginx實現一個主機部署多域名指向不同docker項目 原文:使用nginx實現一個主機部署多域名指向不同docker項目

?1,安裝 docker

yum install docker

使用Docker 中國加速器

vim /etc/docker/daemon.json

添加下面代碼?

{"registry-mirrors": ["https://registry.docker-cn.com"],"live-restore": true }

(這個文件 初始狀態是空的 只有“{}”)

啟動服務

systemctl start docker

systemctl restart docker --重啟
systemctl stop docker? ? --停止

查看版本

docker version

查看狀態

service docker status?

2,安裝nginx

yum install nginx

啟動服務

systemctl start nginx

systemctl restart nginx --重啟
systemctl stop nginx? ? --停止

啥也不顯示表示正常啟動,如顯示

表示啟動出錯,看這里解決?https://blog.csdn.net/a1007720052/article/details/82255226

輸入http://服務器IP/?如果能看到nginx的界面,就表示安裝成功了

3,把項目推送到docker hub

需要先執行 docker login 登錄到 docker hub docker push ejiyuan/demo-docker

命令后面的 image tag 必須是?docker hub 用戶名 + “/” + 項目名稱形式,如果“/”與當前登錄的用戶名不對應 會提示沒有權限

Error response from daemon: pull access denied for io/webapp, repository does not exist or may require 'docker login'

你可以使用下列命令修改鏡像tag名稱后再進行推送

docker tag io/webapp ejiyuan/webapp

4,從docker hub 中拉取 項目 docker image

?在你需要部署的服務上安裝docker?先執行 docker login 登錄到 docker hub 然后執行下列命令拉取鏡像到你的服務器上

docker pull ejiyuan/demo-docker

?docker pull [image 名稱]

5,啟動 docker運行鏡像服務

查看鏡像文件

運行鏡像到容器中:?

docker run -p 127.0.0.1:9000:8080 -t docker.io/ejiyuan/demo-docker

docker之進入啟動容器查看目錄結構:docker exec -it containerID /bin/bash 或?docker exec -it containerID?/bin/sh

這里我不想將9000端口暴露給外網(所有請求都從nginx,映射過來,也就是僅對往外開放80端口)所有限定ip:127.0.0.1,如果你既想實現通過指定域名訪問,又想通過外部 “ip+端口” 訪問,這里去掉127.0.0.0即可

檢查是否正常運行:

方法1,使用curl透一下:

?

?我的默認控制器會返回 hello Docker World

方法2,檢查服務運行狀態

方法3,使用 docker ps命令查看運行的容器

?

6,配置nginx:

vim /etc/nginx/nginx.conf

修改或添加一個server標簽

server {listen 80 default_server;listen [::]:80 default_server;server_name _;root /usr/share/nginx/html;# Load configuration files for the default server block.include /etc/nginx/default.d/*.conf;location / {}error_page 404 /404.html;location = /40x.html {}error_page 500 502 503 504 /50x.html;location = /50x.html {}}#下面是自定義配置 端口轉發 server {listen 80;server_name www.abc.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://127.0.0.1:9000; #轉發到本機9000端口 }}

?重啟nginx:

systemctl restart nginx

在瀏覽器訪問你的域名 www.abc.com

查看 docker項目容器運行日志

?

7,參考文檔

docker nginx實現一個主機部署多個站點

在Docker容器環境中用Let's Encrypt部署HTTPS

為 docker 中的 nginx 配置 https

?「Spring Boot」Docker配置SSL證書(免費證書)

Docker容器應用日志查看?

Nginx/Tengine服務器安裝SSL證書???

關于Docker目錄掛載的總結?

docker之進入啟動容器查看目錄結構

posted on 2019-07-18 23:51 NET未來之路 閱讀(...) 評論(...) 編輯 收藏

轉載于:https://www.cnblogs.com/lonelyxmas/p/11210807.html

總結

以上是生活随笔為你收集整理的使用nginx实现一个主机部署多域名指向不同docker项目的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。