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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

docker发布spring cloud应用

發(fā)布時間:2023/12/20 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 docker发布spring cloud应用 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

原文地址:http://www.cnblogs.com/skyblog/p/5163691.html

本文涉及到的項目:

  cloud-simple-docker:一個簡單的spring boot應(yīng)用

  Docker是一種虛擬機技術(shù),準(zhǔn)確的說是在linux虛擬機技術(shù)LXC基礎(chǔ)上又封裝了一層,可以看成是基于LXC的容器技術(shù)。可以把容器看做是一個簡易版的Linux環(huán)境(包括root用戶權(quán)限、進(jìn)程空間、用戶空間和網(wǎng)絡(luò)空間等)和運行在其中的應(yīng)用程序。容器是用來裝東西的,Docker可以裝載應(yīng)用本身及其運行環(huán)境進(jìn)容器,這是一個很小的文件,然后把這個文件扔到任何兼容的服務(wù)器上就可以運行,也是基于這一點,Docker可以同時讓應(yīng)用的部署、測試和分發(fā)都變得前所未有的高效和輕松!

?  下面例子參考“Spring Boot with Docker”官方例子。

1)建立一個簡單的應(yīng)用,只有一個類,包含main方法,代碼如下:

  

@SpringBootApplication@RestControllerpublic class Application {@RequestMapping("/")public String home() {return "Hello Docker World";}public static void main(String[] args) {SpringApplication.run(Application.class, args); }}

?

2)建立Dockerfile

  

# 基于那個鏡像FROM daocloud.io/java:8# 將本地文件夾掛載到當(dāng)前容器(tomcat使用)VOLUME /tmp# 拷貝文件到容器ADD cloud-simple-docker-1.0.0.jar /app.jar# 打開服務(wù)端口EXPOSE 8080# 配置容器啟動后執(zhí)行的命令ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

?

  這里特別要注意,這里的FROM采用國內(nèi)的docker鏡像,如果連國外的docker鏡像下載,基本是不太可能下載下來的,原因大家都知道。

  有了Dockerfile,就可以部署docker了。

3)部署docker示例

  部署分為2步,分別是創(chuàng)建鏡像、運行。

  • 創(chuàng)建鏡像

  將編譯后的jar文件考到服務(wù)器某個目錄,這里是tmp目錄。然后將Dockerfile也考到該目錄,最后進(jìn)入到該目錄下運行命令:

  docker build? -t ?local/cloud-docker-hello .

  別掉了后面的“.”符號,這個符號表示目錄,這個命令執(zhí)行成功,你會看到以下界面:

?  

  運行成功后,就創(chuàng)建了一個鏡像,可以使用docker images來查看該鏡像。

  • 運行鏡像

  有了鏡像就可以運行了,使用下面命令運行:

  docker run -p 8080:8080 –t ?local/cloud-simple-docker

  其中8080:8080表示本機端口映射到Docker實例端口。如果本機端口沒有打開,還需要打開該端口,打開端口在centos 7中使用firewall-cmd命令:

  firewall-cmd --zone=public --add-port=8080/tcp --permanent

  firewall-cmd –reload

  成功后可以使用docker ps –a查看鏡像運行情況:

  local/cloud-docker-hello | latest | 3ef51d55eb27 | 22 minutes ago | 667.2 MB

  可以看到這個包括了java運行環(huán)境的web應(yīng)用鏡像是667MB。

  該步驟運行結(jié)果如下:

?  

  最后使用curl命令或者直接在瀏覽器打開,可以直接測試該應(yīng)用。使用curl命令如下:

  curl http://localhost:8080

  返回:Hello Docker World

  docker應(yīng)用,水比較深,這里只是舉一個hello world級別的例子。Spring Boot with Docker例子還提供了一個maven插件docker-maven-plugin,這個插件可以直接將項目編譯為docker鏡像。另外這個插件還可以讓你結(jié)合jenkins完成項目的持續(xù)集成和自動部署。具體來說就是jenkins自動通過git或svn拉到工程代碼,然后使用maven進(jìn)行編譯,再調(diào)用項目中的Dockerfile生成鏡像。如此以來不管是什么應(yīng)用,只需要部署docker就可以了,那些配置,那些亂七八糟的環(huán)境搭建都不需要了。

轉(zhuǎn)載于:https://www.cnblogs.com/boonya/p/7462401.html

總結(jié)

以上是生活随笔為你收集整理的docker发布spring cloud应用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。