大叔公開課 微服務與持續整合

2021-09-07 15:48:31 字數 1596 閱讀 6651

免費報名:

.net core來了,帶給我們的是什麼?跨平台,無疑是最大的亮點!

docker橫空出世,讓開發者和運維者都嘗到了甜頭!

jenkins持續整合,功能包括了持續的軟體版本發布與測試,讓開發人員專心關注自己的**開發,讓運維人員專心寫部署**,一次性工作,從來不要反覆的做一件事!

雲時代來了,容器時代了,面向應用的微服務也來了,麻煩也就跟著來了,我應該如何去找到你,應用a,你被部署到了容器裡,你的ip不真的不清楚,因為你是那麼的善變。因為出現了這些問題,所以在解決問題的道路上出現了「服務發現」,「服務熔斷」,「服務註冊」等。

想像一下,把乙個大系統拆分成多個小服務,這些小服務在分別去部署,或者它們之間又可以相互通訊,這對於開發來說是清晰了,對部署來說是麻煩了,對開發來說是職責分離了,應用與應用之間解耦了,以後的a應用的公升級不會影響到b應用了,這大概就是微服務設計的初衷吧!

1 微服務專案圖

2 dockerfile的使用

對於容器化部署來說,我們只要關心dockerfle和yml檔案即可,其中dockerfile用來生成應用的映象;yml用來部署這個系統裡所有的應用。

應用c裡的dockerfile,它以aspnetcore為基礎,然後將自己的發布的**複製到了映象裡,最後使用dotnet命令啟動這個應用!

3 docker-compose.yml進行服務的部署

yml裡會有這個系統的服務名稱和每個小應用的服務名及它們使用的dockerfile的位址,生成的映象名,映象執行後的容器名,監聽的埠,使用的網路,執行的環境等很多配置的資訊

version: '3'

services:

a:image: a

build:

context: ./應用a

dockerfile: dockerfile

b:image: b

build:

context: ./應用b

dockerfile: dockerfile

c:image: c

build:

context: ./應用c

dockerfile: dockerfile

version: '3'

services:

a:environment:

- aspnetcore_environment=development

ports:

- "80"

事實上,對於服務的部署可能要說的還很多,這裡篇幅有限,就到這吧!

jenkins之前我也寫著一些檔案,在我的自動化部署分類上,大家可以進行閱讀!自動化部署&持續整合系列

感謝各位的閱讀!

大叔公開課 微服務與持續整合

免費報名 net core來了,帶給我們的是什麼?跨平台,無疑是最大的亮點!docker橫空出世,讓開發者和運維者都嘗到了甜頭!jenkins持續整合,功能包括了持續的軟體版本發布與測試,讓開發人員專心關注自己的 開發,讓運維人員專心寫部署 一次性工作,從來不要反覆的做一件事!雲時代來了,容器時代了...

大叔公開課 微服務與持續整合

免費報名 net core來了,帶給我們的是什麼?跨平台,無疑是最大的亮點!docker橫空出世,讓開發者和運維者都嘗到了甜頭!jenkins持續整合,功能包括了持續的軟體版本發布與測試,讓開發人員專心關注自己的 開發,讓運維人員專心寫部署 一次性工作,從來不要反覆的做一件事!雲時代來了,容器時代了...

MIT公開課之測試與除錯感想

防禦式程式設計 測試 單元測試 單個函式 整合測試,那整個程式放到一起測試 測試是一件有挑戰新的事 測試套件 不大 要足夠大以確保結果正確 對於debug 的誤解 1.他自己出現的,是你的錯誤 2.debug會繁殖 3.測試不是為了消除乙個bug 而是整個專案沒錯誤 4.調bug 就想打地鼠。乙個後...