shell指令碼自動構建docker

2021-10-05 13:49:20 字數 954 閱讀 3264

shell 指令碼需要配合dockerfile檔案來構建

#源jar路徑  即jenkins構建後存放的路徑

source_path=/gateway

#docker 映象/容器名字或者jar名字 這裡都命名為這個

server_name=gateway

tag=1.0

server_port=10010

#容器id

cid=$(docker ps | grep "$server_name" | awk '')

#映象id

iid=$(docker images | grep "$server_name:$tag" | awk '')

if [ -n "$cid" ]; then

echo "存在容器$server_name, cid-$cid"

docker stop $server_name

docker rm $server_name

fi# 構建docker映象

if [ -n "$iid" ]; then

echo "存在$server_name:$tag映象,iid=$iid"

docker rmi $server_name:$tag

else

echo "不存在$server_name:$tag映象,開始構建映象"

cd $source_path

docker build -t $server_name:$tag .

fi# 執行docker容器

docker run --name $server_name -d -p $server_port:$server_port $server_name:$tag

echo "$server_name容器建立完成"

具體流程是 判斷容器是否存在,存在先停止容器-> 刪除容器 -> 刪除映象 -> 構建映象 -> 啟動容器

構建基礎shell指令碼

大二的時候學了shell指令碼程式設計,這在後來的linux系統的使用中給了我很大的幫助,它能讓我更加快捷的完成一些工作。這也是乙個對shell程式設計細節部分的複習系列,參考到了 linux命令列與shell指令碼程式設計大全 第3版 當年我用到的還是第2版,時間過得真快呀。通過這麼乙個簡單的指令...

自動構建的指令碼

開發過程中,根據持續構建的原則,必須要達到自動構建。1.從scm庫取得源 2.從scm庫的work2 tomcat分支取得tomcat版本 3.用tomcat版本 替換scm庫中相應配置。4.用user submit目錄下開發人員的 替換scm庫中相應的 5.編譯。6.拷貝編譯好的到dist目錄。1...

Shell 自動登入指令碼

配置檔案最終轉化成了陣列,相關資訊與 強耦合。需要的可以根據自己喜好修改配置檔案格式和 users wangjia bin ssh conf server.conf id desc username outsite ip insite ip connect type key path passwor...