`关于脚本:`
'sh setup.sh build'
'sh setup.sh run'
'sh setup.sh exec'
'sh setup.sh delete'
`脚本内的变量:`
1、dockername:
2、rminame:
3、networkMode:
4、susedocker:
5、susermi:
`建议:`
'这个脚本只是当时为了测试一些服务,因为docker清理环境会方便一点,但是不想过多的花时间,去频繁的通过docker命令来删除和创建docker,有的时候Dockerfile没写好,又要去频繁build,甚至要想tag写什么,为了省事,就写了这个脚本,这样就只需要专注于Dockerfile里面的内容。所以,这个脚本的健壮性不高,不建议用在生产环境!!'
set -e
dockername=susetest
rminame=opensuse-test
networkMode=none
susermi=$(docker images | grep $rminame | awk '{print $3}')
susedocker=$(docker ps -a | grep $dockername | awk '{print $NF}')
dockerBuild(){
docker build -t $rminame .
}
dockerRun(){
docker run -itd --name $dockername --network $networkMode $rminame
}
dockerExec(){
docker exec -it $dockername /bin/bash
}
dockerRm(){
docker rm -f $susedocker
}
dockerRmi(){
docker rmi -f $susermi
}
case $1 in
'build')
dockerBuild
;;
'run')
dockerRun
;;
'exec')
dockerExec
;;
'delete')
dockerRm
dockerRmi
;;
'*')
echo "please input (build|run|exec|delete)"
exit 2
;;
esac