摘要:的應(yīng)用場景應(yīng)用的自動化打包和發(fā)布自動化測試和持續(xù)集成發(fā)布在服務(wù)型環(huán)境中部署和調(diào)整數(shù)據(jù)庫或其他的后臺應(yīng)用從頭編譯或者擴展現(xiàn)有的或平臺來搭建自己的環(huán)境。
一、什么是docker ? 簡介
Docker是一個開源的引擎,可以輕松的為任何應(yīng)用創(chuàng)建一個輕量級的、可移植的、自給自足的容器。開發(fā)者在筆記本上編譯測試通過的容器可以批量地在生產(chǎn)環(huán)境中部署,包括VMs(虛擬機)、bare metal、OpenStack 集群和其他的基礎(chǔ)應(yīng)用平臺。
docker的應(yīng)用場景web應(yīng)用的自動化打包和發(fā)布;
自動化測試和持續(xù)集成、發(fā)布;
在服務(wù)型環(huán)境中部署和調(diào)整數(shù)據(jù)庫或其他的后臺應(yīng)用;
從頭編譯或者擴展現(xiàn)有的OpenShift或Cloud Foundry平臺來搭建自己的PaaS環(huán)境。
二、整合 docker 創(chuàng)建工程創(chuàng)建一個springboot工程springboot-docker
1. 啟動類package com.gf; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RestController; @SpringBootApplication @RestController public class SpringbootDockerApplication { public static void main(String[] args) { SpringApplication.run(SpringbootDockerApplication.class, args); } @GetMapping("/{name}") public String hi(@PathVariable(value = "name") String name) { return "hi , " + name; } }2. 將springboot工程容器化
我們編寫一個Dockerfile來定制鏡像,在src/main/resources/docker 下創(chuàng)建Dockerfile文件
FROM frolvlad/alpine-oraclejdk8:slim VOLUME /tmp ADD springboot-docker-0.0.1-SNAPSHOT.jar app.jar RUN sh -c "touch /app.jar" ENV JAVA_OPTS="" ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]3. pom.xml
我們通過maven 構(gòu)建docker鏡像。
在maven的pom目錄,加上docker鏡像構(gòu)建的插件
構(gòu)建鏡像4.0.0 org.springframework.boot spring-boot-starter-parent 2.1.1.RELEASE com.gf springboot-docker 0.0.1-SNAPSHOT jar springboot-docker Demo project for Spring Boot UTF-8 UTF-8 1.8 gf org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-test test org.springframework.boot spring-boot-maven-plugin com.spotify docker-maven-plugin 1.2.0 ${docker.image.prefix}/${project.artifactId} src/main/resources/docker / ${project.build.directory} ${project.build.finalName}.jar
我們運行下面的命令構(gòu)建鏡像:
mvn clean mvn package docker:bulid
構(gòu)建成功后,我們通過下面的命令查看鏡像:
docker images
啟動鏡像:
#c2dba352c3c1 為鏡像ID docker run -p 8080:8080 -t c2dba352c3c1
之后我們就可以訪問服務(wù)了。
源碼下載:https://github.com/gf-huanchupk/SpringBootLearning
歡迎掃碼或微信搜索公眾號《程序員果果》關(guān)注我,關(guān)注有驚喜~
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/27769.html
摘要:可以在地址看到如何使用講解下上面命令行表示控制臺端口號,可以在瀏覽器中通過控制臺來執(zhí)行的相關(guān)操作。同時從控制臺可以看到發(fā)送的速率多線程測試性能開了個線程,每個線程發(fā)送條消息。 showImg(http://ww2.sinaimg.cn/large/006tNc79ly1g5jjb62t88j30u00gwdi2.jpg); 前提 上次寫了篇文章,《SpringBoot Kafka 整合...
摘要:前提好幾周沒更新博客了,對不斷支持我博客的童鞋們說聲抱歉了。熟悉我的人都知道我寫博客的時間比較早,而且堅持的時間也比較久,一直到現(xiàn)在也是一直保持著更新狀態(tài)。 showImg(https://segmentfault.com/img/remote/1460000014076586?w=1920&h=1080); 前提 好幾周沒更新博客了,對不斷支持我博客的童鞋們說聲:抱歉了!。自己這段時...
摘要:在配置下上面啟動的配置數(shù)據(jù)庫名為賬號密碼也為。突出點是,即非阻塞的。四對象修改包里面的城市實體對象類。修改城市對象,代碼如下城市實體類城市編號省份編號城市名稱描述注解標記對應(yīng)庫表的主鍵或者唯一標識符。 摘要: 原創(chuàng)出處 https://www.bysocket.com 「公眾號:泥瓦匠BYSocket 」歡迎關(guān)注和轉(zhuǎn)載,保留摘要,謝謝! 這是泥瓦匠的第104篇原創(chuàng) 文章工程: JDK...
摘要:前提通過前面兩篇文章可以簡單的了解和安裝,今天就將和整合起來使用。然后我運行之前的整合項目,查看監(jiān)控信息如下總結(jié)整篇文章講述了與整合和監(jiān)控平臺的搭建。 showImg(https://segmentfault.com/img/remote/1460000013232432?w=1920&h=1277); 前提 通過前面兩篇文章可以簡單的了解 RocketMQ 和 安裝 RocketMQ...
閱讀 3534·2021-11-18 13:22
閱讀 2547·2021-09-23 11:53
閱讀 715·2019-08-30 13:17
閱讀 1339·2019-08-30 13:12
閱讀 891·2019-08-29 15:43
閱讀 1091·2019-08-29 12:53
閱讀 2826·2019-08-26 18:27
閱讀 1494·2019-08-26 11:52