shell-test.sh 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. # 源jar路径
  2. # SOURCE_PATH=/usr/local/data/jenkins/workspace/insagent/target
  3. # Dockerfile路径
  4. DOCKER_FILE_PATH=/usr/local/java/insAgency
  5. # 容器id
  6. CID=$(''docker ps | grep "ins-test" | awk '{print $1}''')
  7. echo $CID
  8. # 运行docker容器
  9. function run(){
  10. echo "开始构建镜像..."
  11. cd $DOCKER_FILE_PATH
  12. echo "当前路径如下"
  13. pwd
  14. # 构建前判断是否存在镜像,存在则删除
  15. if [ -n "$CID" ]; then
  16. echo "存在demo容器,CID=$CID,重启docker容器 ..."
  17. # 停止容器运行
  18. sudo docker stop $CID
  19. # 删除容器
  20. sudo docker rm $CID
  21. # 删除镜像
  22. sudo docker rmi ins-test
  23. echo "删除镜像和容器成功,下面开始构建新镜像"
  24. else
  25. echo "不存在people-healthy容器,下面直接开始构建镜像"
  26. fi
  27. # 构建镜像
  28. docker build -t ins-test .
  29. echo "创建容器成功"
  30. docker images
  31. # 杀死特定端口进程
  32. # mypid=$(netstat -apn|grep 9001|awk '{print $7}'|cut -d/ -f1);
  33. # echo $mypid
  34. # kill -9 $mypid
  35. docker run -it --name ins-test \
  36. --log-driver json-file \
  37. --log-opt max-size=100m \
  38. --log-opt max-file=3 \
  39. -p 8080:8888 \
  40. -e "--spring.profiles.active=test" \
  41. -p 9999:9999 \
  42. --restart=always \
  43. -v /usr/local/java/insAgency:/ins \
  44. -v /usr/local/java/insAgency/logs:/ins/logs \
  45. --mount type=bind,source=/nasData,destination=/nasData \
  46. -d ins-test:latest
  47. }
  48. #入口
  49. run