本篇內(nèi)容介紹了“如何在docker容器中部署應(yīng)用”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
一個(gè)簡(jiǎn)單的Hello World應(yīng)用。
1.1 Maven依賴
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.4.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent>
引入spring-boot-starter-web來創(chuàng)建一個(gè)Web應(yīng)用。
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
1.2 主應(yīng)用程序
@SpringBootApplicationpublic class FirtSpringBootApplication { public static void main(String[] args) { SpringApplication.run(FirtSpringBootApplication.class, args); } }
1.3 服務(wù)接口
RESTful服務(wù)接口:
@RestControllerpublic class HelloController { @RequestMapping("/hello") public String hello() { return "Hello World"; } }
2 安裝Docker,安裝完畢后,Docker環(huán)境的虛擬IP是192.168.99.100。
3 部署應(yīng)用
3.1 Spring Boot應(yīng)用打包
在Spring Boot應(yīng)用工程目錄下執(zhí)行mvn 打包命令:
mvn package spring-boot:repackage
工程的target目錄里生成了一個(gè)jar包 firtSpringBoot-0.0.1-SNAPSHOT.jar。將jar包更名為firtSpringBoot-1.0.jar上傳到Docker環(huán)境里。
3.2 Dockerfile文件
Dockfile原則上是一個(gè)批處理文件,包含了構(gòu)建鏡像的命令。將這些命令放入文件中并不是絕對(duì)必要的,因?yàn)槲覀兛梢詫⑺鼈儌鬟f到命令行,只是使用文件更簡(jiǎn)單一些。
現(xiàn)在創(chuàng)建一個(gè)Dockerfile:
FROM alpine:edge MAINTAINER peterwanghao.com RUN apk add --no-cache openjdk8 VOLUME /tmp ADD firtSpringBoot-1.0.jar firtSpringBoot.jar EXPOSE 8080ENTRYPOINT ["java","-jar","/firtSpringBoot.jar"]
3.3創(chuàng)建鏡像
在Dockerfile文件目錄下運(yùn)行docker build命令,這將下載基鏡像并一條接一條地運(yùn)行Dockerfile文件中的條目。創(chuàng)建的鏡像的名字是first,標(biāo)簽1.0。–rm=true,在整個(gè)構(gòu)建過程成功后刪除中間環(huán)節(jié)的容器。
$docker build -t first:1.0 --rm=true .
使用docker images命令列出所有的鏡像和它們的詳細(xì)信息。
docker@default:~/first-spring-boot$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE first 1.0 02f67d8c308d 17 hours ago 119MB hello-world latest e38bc07ac18e 6 weeks ago 1.85kB alpine edge 5c4fa780951b 4 months ago 4.15MB
3.4 運(yùn)行容器
接下來,我們將運(yùn)行容器。使用下面的命令加載并運(yùn)行容器。
docker run --name=first -p 8080:8080 -t first:1.0
使用docker ps命令列出正在運(yùn)行的容器
docker@default:~/first-spring-boot$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 9fc3aef6e852 first:1.0 "java -jar /firtSpri 5 hours ago Up 5 hours 0.0.0.0:8080->8080/tcp first
“如何在docker容器中部署應(yīng)用”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
標(biāo)題名稱:如何在docker容器中部署應(yīng)用-創(chuàng)新互聯(lián)
網(wǎng)站鏈接:http://chinadenli.net/article40/dgpsho.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、云服務(wù)器、定制開發(fā)、網(wǎng)站營(yíng)銷、App設(shè)計(jì)、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容