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

首頁 > 服務器 > Web服務器 > 正文

詳解基于docker 如何部署surging分布式微服務引擎

2024-09-01 13:55:08
字體:
來源:轉載
供稿:網友

1、前言

轉眼間surging 開源已經有1年了,經過1年的打磨,surging已從最初在window 部署的分布式微服務框架,到現在的可以在docker部署利用rancher 進行服務編排的分布式微服務引擎,再把業務進行剝離, 通過配置路徑就能驅動加載業務模塊,這樣的細粒度設計,能更加靈活從業務中針對于對象加以細分,能更加靈活的拆分聚合服務。而這篇文章我們來談談基于docker 如何部署

surging源碼下載

2、概述

容器,就是用來存放鏡像的器皿,而鏡像是構建成的一個輕量的、獨立的、可執行的包,包括了執行它所需要的所有東西:代碼、運行環境、系統工具、系統庫、設置。

程序被構建成鏡像放到容器中,那么它所依賴的下層環境就不再重要了。它可以在任何地方運行,甚至在混合云環境下也可以。所以為何容器能流行起來, 而容器技術興起讓Docke也漸漸的映入大家的眼簾,

docker,surging,分布式,微服務引擎

那么Docker又是什么呢?

  1. Docker是基于Go語言開發并開源的容器引擎
  2. Docker將應用軟件運行時所需的一切都打包成互相隔離的容器
  3. Docker可以自動執行并配置開發/線上環境,快速構建,測試和運行復雜的多容器應用程序
  4. 對擁有數千個節點或容器的應用程序,Docker也能快速的擴展和調配
  5. 可以運行在主流的Linux系統,Mac以及Windows上,并且保證無論軟件在哪里部署,都能正常運行并得到相同的結果

相關概念介紹

Image鏡像和Container容器:你可以把兩者理解為類和實例對象,或者是ISO系統鏡像和虛擬機的關系。不同的Image所包含的軟件或者環境是不同的,但是你可以使用Dockerfile(docker特有語法規則所創建的文件)進行管理。而Container則是以Image作為模板,可以獨立運行的微型系統,一個Image可以創建出來多個Container容器的實例

Registry:Docker Hub鏡像倉庫,為每個人提供龐大的鏡像資源進行拉取和使用

Dockerfile:是一個將鏡像命令組合在一起的文件,用于Image的自動構建

3、環境搭建

系統環境

宿主機:Windows 10 專業版

Linux服務器: CentOS 3.10 

1.安裝Docker

Docker 要求 CentOS 系統的內核版本高于 3.10 ,查看本頁面的前提條件來驗證你的CentOS 版本是否支持 Docker 。

通過 uname -r 命令查看你當前的內核版本

[root@runoob ~]# uname -r 3.10.0-862.E17.X86_64

# yum install docker-engine 安裝docker包

安裝成功后,使用docker version命令查看是否安裝成功,安裝成功后------如下圖

docker,surging,分布式,微服務引擎

啟動 Docker

systemctl start docker

查看docker信息,如下圖

systemctl status docker

docker,surging,分布式,微服務引擎

測試運行 hello-world

#docker run hello-world

2.安裝rancher

下載鏡像

docker pull rancher/server

啟動 rancher

docker run -d --restart=always -p 8080:8080 rancher/server

安裝成功后,通過http://ip:8080訪問,如下圖所示

docker,surging,分布式,微服務引擎

3.安裝rabbitmq

 下載鏡像

docker run -d --restart=always -p 8080:8080 rancher/server

 

復制代碼代碼如下:

 #docker run -d --name rabbitmq --publish 5672:5672 --publish 4369:4369 --publish 25672:25672 --publish 15671:15671 --publish 15672:15672 /rabbitmq:management
 

 

安裝成功后,通過http://ip:15672訪問,如下圖所示

docker,surging,分布式,微服務引擎

4.安裝Consul

下載鏡像

#docker pull docker.io/consul:latest

創建 Consul 配置

#vim /opt/platform/consul/server.json
{  "datacenter": "quark-consul",  "data_dir": "/consul/data",  "server": true,  "ui": true,  "bind_addr": "192.168.249.162",  "client_addr": "192.168.249.162",  "bootstrap_expect": 1,  "retry_interval": "10s",  "rejoin_after_leave": false,  "skip_leave_on_interrupt": true}

配置說明

官方在啟動容器的時候是將一部分配置作為 docker run 的參數,而我是把參數寫到了配置文件里。

  1. datacenter:數據中心名稱(庫名)
  2. data_dir:數據存儲目錄
  3. server:運行在server模式
  4. ui:使用UI界面
  5. bind_addr:內部集群通信綁定的地址。默認是 0.0.0.0 ,如果有多塊網卡,需要指定,否則啟動報錯
  6. client_addr:客戶端接口綁定的地址,默認是 127.0.0.1 ;
  7. retry_join:重新加入集群
  8. retry_interval:重試時間
  9. rejoin_after_leave:在離開集群之后才重試加入
  10. skip_leave_on_interrupt:在啟動后,是否 Ctrl+C 優雅退出,我們是容器模式,所以不用管,直接 true 就好了。

啟動 consul-server

 

復制代碼代碼如下:
docker run -d --net=host --name consul -v /opt/platform/consul/config:/consul/config -v /opt/platform/consul/data:/consul/data consul agent

 

安裝成功后,通過http://ip:8500訪問,如下圖所示

docker,surging,分布式,微服務引擎

5. 安裝dotnetcore 2.1 runtime

下載鏡像

#sudo docker pull microsoft/dotnet:2.1-runtime

啟動  

#sudo docker run -it microsoft/dotnet:2.1-runtime

三、部署程序

 1. 部署surging引擎,無需引用任何業務模塊,新建Dockerfile文件

FROM microsoft/dotnet:2.1-runtimeWORKDIR /appCOPY . .ENTRYPOINT ["dotnet", "Surging.Services.Server.dll"]

發布程序

dotnet publish -r centos.7-x64 -c release

使用Dockerfile創建鏡像

#docker build -t surgingserver .

啟動

#docker run --name surgingserver --env Mapping_ip=192.168.249.162 --env Mapping_Port=198 --env RootPath=/home/fanly --env Register_Conn=192.168.249.162:8500 --env EventBusConnection=172.17.0.4 --env Surging_Server_IP=0.0.0.0 -v /home/fanly:/home/fanly -it -p 198:198 surgingserver

配置說明

  1. Mapping_ip:映射的外部IP(環境變量)
  2. Mapping_port :映射的外部端口 (環境變量)
  3. RootPath:業務模塊存儲的根路徑 (環境變量)
  4. Register_Conn:注冊中心地址 (環境變量)
  5. EventBusConnection:eventbus 地址 (環境變量)
  6. Surging_Server_IP:容器內部IP (環境變量)

啟動后在rancher如下圖所示

docker,surging,分布式,微服務引擎

因為方便,把宿主機的目錄進行了掛載,microsurging 為分布式微服務引擎,Modules 為業務模塊目錄,surgingapi為網關

docker,surging,分布式,微服務引擎

2. 部署surging網關, 新建Dockerfile文件

FROM microsoft/dotnet:2.1-runtimeWORKDIR /appCOPY . .ENTRYPOINT ["dotnet", "Surging.ApiGateway.dll"]

發布程序

dotnet publish -r centos.7-x64 -c release

使用Dockerfile創建鏡像

docker build -t surgingapi .

啟動

 

復制代碼代碼如下:
#docker run --name surgingapi -it -p 729:729 --env Register_Conn=192.168.249.162:8500 surgingapi

 

啟動后在rancher如下圖所示

docker,surging,分布式,微服務引擎

可以通過http://ip:729進行訪問

docker,surging,分布式,微服務引擎

docker,surging,分布式,微服務引擎

然后可以通過postman 來測試網關,如下圖

docker,surging,分布式,微服務引擎

四、總結

通過1年的開發,surging 也趨于完善,性能非常不錯,平均訪問在0.12ms 左右

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到服務器教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美色另类天堂2015| 国产精品亚洲一区二区三区| 揄拍成人国产精品视频| 在线色欧美三级视频| 国产欧美精品在线| 亚洲国产精品人久久电影| 亚洲字幕一区二区| 久久免费视频在线| 久久综合伊人77777尤物| 成人午夜在线观看| 欧美电影免费观看网站| 日韩av在线一区| 日韩亚洲欧美中文高清在线| 精品久久久国产| 中文字幕av一区二区三区谷原希美| 欧美华人在线视频| 亚洲色图av在线| 日韩视频精品在线| 日韩成人激情影院| 国产激情久久久| 日韩免费高清在线观看| 欧美电影在线播放| 中文字幕亚洲专区| 亚洲欧美国产一本综合首页| 中文字幕视频在线免费欧美日韩综合在线看| 久久99国产综合精品女同| 成人激情av在线| 国产精品一二三在线| 国产成人精品久久二区二区91| 欧美最顶级丰满的aⅴ艳星| 日韩中文理论片| 久久久久久久影视| 日韩欧美主播在线| 国产一区二区美女视频| 亚洲va欧美va国产综合久久| 久久久免费精品| 青青久久av北条麻妃黑人| 日韩**中文字幕毛片| 欧美激情精品久久久久久免费印度| 国产精品免费一区二区三区都可以| 日韩av网站电影| 亚洲欧美国产精品专区久久| 欧美视频精品一区| 色先锋久久影院av| 欧美日韩国产999| 亚洲aa中文字幕| 欧美在线激情网| 欧美午夜视频一区二区| 精品成人乱色一区二区| 81精品国产乱码久久久久久| 91久久久久久久久久| 久热精品视频在线免费观看| 亚洲人成在线免费观看| 国产成人中文字幕| 日韩在线观看视频免费| 久久免费观看视频| 九九热精品视频| 91亚洲精品一区二区| 日韩中文视频免费在线观看| 中文国产成人精品| 亚洲自拍偷拍一区| 精品国产区一区二区三区在线观看| 欧美性视频精品| 中文在线资源观看视频网站免费不卡| 日韩美女激情视频| 91在线视频免费| 亚洲国产成人爱av在线播放| 国产成人精品综合| 国产日韩换脸av一区在线观看| 欧美激情日韩图片| 国产成人精品优优av| 国产精品爽爽ⅴa在线观看| 久久影视电视剧免费网站清宫辞电视| 亚洲色图在线观看| 国产精品成人观看视频国产奇米| 亚洲福利影片在线| 欧美国产日韩免费| 国产精品高清在线| 5566日本婷婷色中文字幕97| 国产精品成人免费电影| 97精品免费视频| 日韩欧美在线字幕| 日本午夜在线亚洲.国产| 18性欧美xxxⅹ性满足| 亚洲精选中文字幕| 成人福利免费观看| 国产免费一区二区三区香蕉精| 精品一区二区三区电影| 欧美怡春院一区二区三区| 色综合久久88| 亚洲国产成人在线播放| 欧美精品生活片| 久久久久久久久久国产精品| 国产成人在线精品| 91av视频在线| 国产精品高清在线观看| 国产成人拍精品视频午夜网站| 国产在线一区二区三区| 亚洲精品电影久久久| 欧美性精品220| 亚洲a级在线观看| 欧美精品福利在线| 亚洲精品视频免费在线观看| 欧美xxxx18性欧美| 日韩精品极品毛片系列视频| 亚洲黄页网在线观看| 欧美极品美女视频网站在线观看免费| 国产日韩视频在线观看| 国内精品模特av私拍在线观看| 欧美激情一二区| 亚洲欧美激情四射在线日| 欧美日韩亚洲系列| 久久久久久69| 日韩在线中文字| 亚洲最大的网站| 狠狠综合久久av一区二区小说| 欧美中文字幕在线播放| 日韩精品免费看| 欧美国产日产韩国视频| 91美女片黄在线观| 性色av一区二区三区免费| 热久久美女精品天天吊色| 国产精品视频一区二区高潮| 欧美电影免费观看高清完整| 国产亚洲精品成人av久久ww| 麻豆精品精华液| 欧美一区二区三区免费视| 国产日韩在线视频| 欧美性理论片在线观看片免费| 一区二区三区视频免费在线观看| 中文字幕在线成人| 精品亚洲一区二区| 成人精品一区二区三区电影免费| 国产视频精品久久久| 555www成人网| 中文字幕久精品免费视频| 国产亚洲精品激情久久| 91久久精品国产91久久性色| 亚洲欧洲中文天堂| 91社影院在线观看| 蜜月aⅴ免费一区二区三区| 成人国内精品久久久久一区| 成人久久18免费网站图片| 欧美激情第99页| 日韩电影在线观看中文字幕| 日本不卡免费高清视频| 亚洲欧美日韩中文在线制服| 成人欧美一区二区三区在线湿哒哒| 91青草视频久久| 亚州欧美日韩中文视频| 在线观看精品国产视频| 91精品啪在线观看麻豆免费| 国产a∨精品一区二区三区不卡| 日韩麻豆第一页| 久久黄色av网站| 亚洲午夜av久久乱码| 亚洲在线免费视频| 91亚洲永久免费精品| 国产精品2018| 亚洲色图第一页| 中文字幕在线看视频国产欧美在线看完整| 亚洲免费视频一区二区| 国产亚洲人成a一在线v站| 中文字幕国产精品久久|