jenkins+svn+maven+docker 自動(dòng)部署和運(yùn)行

image.png

1、打包多模塊單個(gè)工程包

clean install -pl gcxx  -am

2、ssh配置

image.png

3、docker存放位置,以及編譯后jar包位置

jekins每個(gè)工程位置是基于他的“workspace/構(gòu)建name” 為開(kāi)始位置的相對(duì)位置


image.png

dockerfile位置


image.png

jar包位置


image.png

4、ssh位置 以全局配置的文件地址為開(kāi)始相對(duì)位置

我在全局配置中配置了文件地址為:/home,所以這邊如果只想存放到/home/gcxx里面只要寫(xiě)gcxx


image.png

5、執(zhí)行docker構(gòu)建和運(yùn)行命令

1、dropContainer.sh 刪除容器

#!/bash/sh
containerName=$1 
name=`docker inspect --format='{{.Name}}' $(sudo docker ps -aq --no-trunc) | cut -c2-|grep -w ${containerName} `
echo "dockerName is: " ${name}  
if [[ -n "${name}" ]];then 
exist=`docker inspect --format '{{.State.Running}}' ${containerName}`
echo "docker running:" $exist
  if [ "${exist}" = "true" ]; then 
    docker kill ${containerName} 
  else 
    docker rm -f ${containerName} 
  fi
fi

#循環(huán)判定是否已刪除,刪除需要時(shí)間
while [ -n "${name}" ]
do 
sleep 2
name=`docker inspect --format='{{.Name}}' $(sudo docker ps -aq --no-trunc) | cut -c2-|grep -w ${containerName} `
echo "dockerName is: " ${name} 
done

#刪除未打標(biāo)簽鏡像
docker rmi $(docker images -q -f dangling=true)

echo "docker is removed,do next"

2、執(zhí)行構(gòu)建和運(yùn)行

#容器名稱(chēng)
containerName=gcxx
#執(zhí)行刪除容器
bash /home/dropContainer.sh gcxx
echo "start bulid and run docker"
#打開(kāi)文件地址
cd /home/gcxx
#執(zhí)行鏡像構(gòu)建 
docker build -t ${containerName}:0.0.1 .
#鏡像構(gòu)建完成,運(yùn)行鏡像
docker run  -p 8081:8080 --name ${containerName} -d ${containerName}:0.0.1 
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容