本篇內(nèi)容介紹了“如何在docker容器中部署應(yīng)用”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
企業(yè)官網(wǎng)是企業(yè)形象的一張重要名片。成都創(chuàng)新互聯(lián)的成都官網(wǎng)定制服務(wù),能夠?qū)⒊啥季W(wǎng)頁(yè)設(shè)計(jì)與企業(yè)的實(shí)力&公信力、產(chǎn)品服務(wù)優(yōu)勢(shì)、文化價(jià)值觀等有機(jī)結(jié)合,把握企業(yè)的獨(dú)特之處,突出重點(diǎn)核心內(nèi)容,并以恰如其分的設(shè)計(jì)風(fēng)格,抓住目標(biāo)用戶的關(guān)注點(diǎn)和興趣點(diǎn),幫助企業(yè)塑造好第一印象,成都全網(wǎng)營(yíng)銷推廣展現(xiàn)公司實(shí)力。成都官網(wǎng)定制,為你解決成都創(chuàng)新互聯(lián)網(wǎng)營(yíng)銷解決方案。一個(gè)簡(jiǎn)單的Hello World應(yīng)用。
1.1 Maven依賴
org.springframework.boot spring-boot-starter-parent 1.5.4.RELEASE
引入spring-boot-starter-web來(lái)創(chuàng)建一個(gè)Web應(yīng)用。
org.springframework.boot spring-boot-starter org.springframework.boot spring-boot-starter-test test org.springframework.boot spring-boot-starter-web
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)建過(guò)程成功后刪除中間環(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)行容器
接下來(lái),我們將運(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í)用文章!