93 lines
2.0 KiB
Bash
93 lines
2.0 KiB
Bash
#!/bin/bash
|
|
schema="http://"
|
|
registryUrl="192.168.10.102:8001"
|
|
registryNameSpace="xiaomayi"
|
|
user="deploy"
|
|
pass="Harbor20240330"
|
|
serverName=$2
|
|
imageName="${registryUrl}/${registryNameSpace}/${serverName}"
|
|
tag=$3
|
|
|
|
desc() {
|
|
clear
|
|
echo "==========================================================="
|
|
echo "Deploy Containter"
|
|
echo "==========================================================="
|
|
echo "version 0.1"
|
|
echo "deploy: deploy containter"
|
|
echo "delete: delete containter"
|
|
echo ""
|
|
echo "==========================================================="
|
|
echo press any key to continue && read TEMP && echo ok..
|
|
}
|
|
|
|
list_image() {
|
|
image_id=`docker inspect --format="{{.Config.Image}}" ${serverName}`
|
|
}
|
|
|
|
list_process() {
|
|
process_id=`docker inspect --format="{{.Id}}" ${serverName}`
|
|
}
|
|
|
|
#pull镜像
|
|
pull_image() {
|
|
echo "----------------"
|
|
echo "Pull Image"
|
|
echo "----------------"
|
|
docker login --username=${user} --password=${pass} ${registryUrl}
|
|
docker pull "${imageName}:${tag}"
|
|
echo ""
|
|
}
|
|
|
|
#运行镜像
|
|
deploy_image() {
|
|
echo "----------------"
|
|
echo "Deploy Image"
|
|
echo "----------------"
|
|
export VERSION=${tag}
|
|
docker compose up -d ${serverName}
|
|
echo ""
|
|
}
|
|
|
|
#停掉容器、删除容器、删除镜像
|
|
delete_image() {
|
|
echo "----------------"
|
|
echo "Delete Image"
|
|
echo "----------------"
|
|
list_image
|
|
list_process
|
|
if [ "$image_id" != "" ] ; then
|
|
if [ "$process_id" != "" ] ; then
|
|
#停掉容器
|
|
docker stop $process_id
|
|
|
|
#删除容器
|
|
docker rm $process_id
|
|
|
|
#删除镜像
|
|
docker rmi --force $image_id
|
|
else
|
|
#删除镜像
|
|
docker rmi --force $image_id
|
|
fi
|
|
fi
|
|
echo ""
|
|
}
|
|
|
|
|
|
# main program
|
|
case $1 in
|
|
"deploy")
|
|
pull_image
|
|
delete_image
|
|
deploy_image
|
|
;;
|
|
"delete")
|
|
delete_image
|
|
;;
|
|
*)
|
|
desc
|
|
;;
|
|
esac
|
|
|