亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么用Jenkins+docker發布Springbot服務

發布時間:2023-03-09 11:24:35 來源:億速云 閱讀:130 作者:iii 欄目:開發技術

這篇文章主要介紹了怎么用Jenkins+docker發布Springbot服務的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇怎么用Jenkins+docker發布Springbot服務文章都會有所收獲,下面我們一起來看看吧。

1.開發Springbot應用

新建多個環境的配置文件

怎么用Jenkins+docker發布Springbot服務

bootstrap.yaml

怎么用Jenkins+docker發布Springbot服務

 通過變量獲取不同環境active 

bootstrap-dev.yml

怎么用Jenkins+docker發布Springbot服務

 bootstrap-pre.yaml

怎么用Jenkins+docker發布Springbot服務

預發布及生產環境配置文件走nacos

二.配置docker

新增Dockerfile文件

怎么用Jenkins+docker發布Springbot服務

Dockerfile內容

# Docker image for springboot file run
# VERSION 0.0.1
# Author: eangulee
# 基礎鏡像使用java
FROM openjdk:8
# 作者
MAINTAINER qql <xxx@qq.com>
# VOLUME 指定了臨時文件目錄為/tmp。
# 其效果是在主機 /var/lib/docker 目錄下創建了一個臨時文件,并鏈接到容器的/tmp
VOLUME /tmp
# 設置時區
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 將jar包添加到容器中并更名為app.jar
ARG JAR_FILE
ADD target/cdc-0.0.1-SNAPSHOT.jar /app.jar #替換成你項目打包后的文件名稱
#配置項目端口
EXPOSE 8020
# 運行jar包
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java","-jar","/app.jar","--spring.profiles.active=${env}"] #通過變量傳遞不同的環境

服務器項目下新增docker-composer.yaml文件 ,不要放在代碼版本庫

version: '3'
services:
  project-demo:
    container_name: cdcd-demo #自定義容器名稱
    image: qql/cdcd:0.0.1 #鏡像名稱
    restart: always
    environment:
      env: dev #環境,不同環境使用不同環境名稱
    volumes:
      # 同步時間
      - /etc/localtime:/etc/localtime:ro
      # 如果項目有些日志或者寫文件,需要同步到宿主機器,也需要定義相應的卷
#      - ./data:/etc/project-demo/data
#      - ./log:/etc/project-demo/log
    ports:
      - 8080:8020

三.配置Jenkins

怎么用Jenkins+docker發布Springbot服務

怎么用Jenkins+docker發布Springbot服務

怎么用Jenkins+docker發布Springbot服務

新增部署shell腳本

怎么用Jenkins+docker發布Springbot服務

#!/bin/bash 
echo "當前位置"
pwd
 
mvn clean package -Dmaven.test.skip=true
#切換到項目目錄
cd cdc
pwd
#獲取最新版本tag
LatestTag=$(git describe --tags `git rev-list --tags --max-count=1`)
echo -e "最新版本tag......"
echo -e "$LatestTag"
echo -e "鏡像地址"
 
 
#獲取本機IP
local_ip=`ifconfig eth0 | grep 'inet' | awk '{print $2}' | sed -e "s/addr\://"`
echo ${local_ip}
#制作docker鏡像
docker build  -f Dockerfile -t qql/cdc:1.0 .
echo "制作成功"
cd ../docker
pwd
#根據docker-composer.yaml文件新建獲取重新構建docker容器
docker-compose -f docker-composer.yaml -p cdc up -d
step=1 #間隔的秒數,不能大于60
content=""
 
for (( i = 0; i < 60; i=(i+step) )); do
status_code=$(curl -I -m 10 -o /dev/null -s -w %{http_code}  127.0.0.1:8080/index/index) #訪問服務一個接口驗證容器是否啟動
echo $status_code
if [ $status_code != 200 ]; then
  sleep $step
  echo "服務還沒有啟動,耗時"$i"秒"
else
  echo "服務已經啟動,耗時"$i"秒"
  break
fi
 
if [ $i == 59 ]; then
  echo "啟動失敗"
  exit -1
fi
done
 
{
  docker rmi `docker images | grep none | awk '{print $3}'` && /
 
} || {
  echo 'delete null images error(不需要處理)'
}

保存,則就可以執行部署

怎么用Jenkins+docker發布Springbot服務

執行構建 

關于“怎么用Jenkins+docker發布Springbot服務”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“怎么用Jenkins+docker發布Springbot服務”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

利津县| 富顺县| 泸水县| 朝阳市| 桐庐县| 临泉县| 日照市| 杭锦后旗| 靖江市| 时尚| 玛沁县| 罗山县| 长治市| 合江县| 彭阳县| 卫辉市| 沅陵县| 永宁县| 张家川| 阜宁县| 安丘市| 仪陇县| 梁河县| 龙门县| 鹤山市| 泰顺县| 突泉县| 车致| 两当县| 中西区| 申扎县| 鲁山县| 曲阜市| 林甸县| 白水县| 十堰市| 福鼎市| 基隆市| 高邮市| 芦山县| 南和县|