#!/bin/bash
#author xuejp
#date 2017-03-28
item_name="anloq-node-zhengshi" #專案名字
img_manger="192.168.0.122:5000" #私有映象位址
date=`date +%f-%h-%m-%s` #當前時間
project_name=`echo "$item_name-$date"` #回滾用的映象名稱
fpath="./delopy_scripts" #工作目錄
#利用dockfile構建映象
docker build -t --rm $img_manger/node:v1.0 .
#推送映象
docker push $img_manger/node:v1.0
#判斷是否回滾過
if cat $fpath/roolback;then
names=`cat $fpath/project_name`
docker stop $names
docker run -ti -d --name $item_name $img_manger/node:v1.0
rm -rf $fpath/roolback
#判斷專案是否在執行
elif docker ps |grep anloq-node-zhengshi |awk | grep -fx $item_name;then
docker stop $item_name
docker rename $item_name $project_name
docker run -ti -d --name $item_name $img_manger/node:v1.0
#docker rmi -f`docker images | grep "" | awk ""`
#判斷專案是否存在
elif docker ps -a |grep anloq-node-zhengshi |awk | grep -fx $item_name ;then
docker start $item_name
#執行映象
else
docker run -ti -d --name $item_name $img_manger/node:v1.0
fi#將專案全稱存入檔案,留著回滾用
echo $project_name >$fpath/project_name
只需要在jenkins專案配置裡面寫入即可
下面是回滾指令碼 目前只能回滾乙個版本,有需要的可以參考下
#!/bin/bash
#auth xuejp
#date 2017-03-28
item_name=」anloq-node-zhengshi」
roll_name=cat ./delopy_scripts/project_name
date=date +%f-%h-%m-%s
docker stop it
emna
medo
cker
rena
meitem_name it
emna
me− date
docker start $roll_name
echo 1 > ./delopy_scripts/roolback
mysql自動化部署方案 什麼是自動化部署?
自動化部署將可交付產品,快速且安全地交付使用者使用的一套系統和工具。系統會自動構建 測試並準備 變更,以便將其發布到指定環境的過程,包括開發環境 預發布環境 生產環境等。自動化部署工具介紹 簡要介紹 該工具是資料庫自動化部署調優工具,支援mysql 8.0.17 8.0.18和postgresql ...
自動化部署job
bin sh the discription of start.sh echo e the script function 1 deploy the tomcat server if files exist.echo e 2 restart the tomcat server if files no...
自動化部署指令碼
usr bin env python coding utf 8 import sys,os import subprocess import re import shlex import time filename sys.argv 0 absdir os.path.abspath os.path....