最近需要打包項目給成員們進行測試,但打包運行后很影響開發(fā),于是打算使用docker
模擬生產(chǎn)環(huán)境運行打包后的項目,這樣就能既開發(fā),又能給成員進行測試了。
由于原項目過大,打算先拿軟件工程的大實驗試試水,軟件工程大實驗使用的是spring-boot,redis,mysql,angular,nginx
這些環(huán)境,先試了試后臺的spring-boot,redis,mysql
的docker
搭建。
docker-compose
compose
項目是Docker官方的開源項目,負責實現(xiàn)對Docker容器集群的快速編排。compose
定位是定義和運行多個docker容器的應(yīng)用。
我們都知道,使用一個Dockerfile
模版文件就可以創(chuàng)建一個應(yīng)用容器,但通常在一個項目中,需要多個應(yīng)用容器,就像我的后臺,同時需要jdk8
、redis
、mysql
這些應(yīng)用。docker-compose
剛好滿足了這樣的需求。它允許用戶通過一個單獨的docker-compose.yml
模版文件來定義一組相關(guān)聯(lián)的應(yīng)用容器為一個項目。
服務(wù)(service):一個應(yīng)用的容器,實際可以包括若干運行相同鏡像的容器實例。
compose
中兩個重要的概念:
項目(project):由一組關(guān)聯(lián)的應(yīng)用容器組成的一個完整的業(yè)務(wù)單元,在docker-compose.yml
文件中定義。
服務(wù)就是我們需要的docker
容器,項目就是由許多服務(wù)構(gòu)成的,了解了docker-compose
之后就可以進行環(huán)境搭建了。
搭建spring-boot
為了編譯spring-boot
,基于以下流程:
構(gòu)建的Dockerfile
文件:
#### 建立spring-boot項目 FROM openjdk:8-jdk-alpine as build # 設(shè)置項目在docker容器中工作目錄 WORKDIR /app # 將 maven 可執(zhí)行程序復(fù)制到容器中 COPY mvnw . COPY .mvn .mvn # 復(fù)制pom.xml文件 COPY pom.xml . # 導入所有maven依賴 RUN ./mvnw dependency:go-offline -B # 復(fù)制項目源代碼 COPY src src # 打包應(yīng)用程序 RUN ./mvnw package -DskipTests RUN mkdir -p target/dependency && (cd target/dependency; jar -xf ../*.jar) #### 設(shè)置能運行應(yīng)用程序的最小docker容器 FROM openjdk:8-jre-alpine ARG DEPENDENCY=/app/target/dependency # Copy project dependencies from the build stage COPY --from=build ${DEPENDENCY}/BOOT-INF/lib /app/lib COPY --from=build ${DEPENDENCY}/META-INF /app/META-INF COPY --from=build ${DEPENDENCY}/BOOT-INF/classes /app ENTRYPOINT ["java","-cp","app:app/lib/*","com.xiang.airTicket.AirTicketApplication"]
當前文章:docker-compose配置spring環(huán)境的方法步驟-創(chuàng)新互聯(lián)
URL地址:http://www.chinadenli.net/article30/dcegpo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導航、響應(yīng)式網(wǎng)站、移動網(wǎng)站建設(shè)、品牌網(wǎng)站設(shè)計、App設(shè)計、動態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容