video-measure-queue-docker.sh 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. #/bin/bash
  2. cid=0
  3. httpcode=000
  4. check_docker(){
  5. echo "-----------------------------"
  6. echo "检查Docker安装环境......"
  7. echo "-----------------------------"
  8. docker -v
  9. if [ $? -eq 0 ]; then
  10. echo "检查到Docker已安装!"
  11. echo "-----------------------------"
  12. service docker restart
  13. sleep 5
  14. else
  15. echo "安装docker环境..."
  16. echo "-----------------------------"
  17. yum install docker -y
  18. echo "安装docker环境...安装完成!"
  19. echo "-----------------------------"
  20. service docker start
  21. sleep 5
  22. fi
  23. }
  24. check_up(){
  25. echo "-----------------------------"
  26. echo "正在确认服务是否完成启动!"
  27. while [ $httpcode != 200 ]
  28. do
  29. httpcode=`curl -I -m 10 -o /dev/null -s -w %{http_code} http://localhost:8182/longvideoapi/test`
  30. echo -en ". "
  31. sleep 2
  32. done
  33. echo " "
  34. echo “请求返回值: $httpcode 服务器启动完成”
  35. echo "-----------------------------"
  36. }
  37. stop(){
  38. echo "-----------------------------"
  39. echo "检查video-measure-queue-test容器是否存在"
  40. echo "-----------------------------"
  41. echo "停止并删除容器"
  42. echo "-----------------------------"
  43. docker stop $(docker ps -a|grep "video-measure-queue-test:latest"|grep -v grep|awk '{print $1}')
  44. docker rm -f $(docker ps -a|grep "video-measure-queue-test:latest"|grep -v grep|awk '{print $1}')
  45. docker rmi registry-internal.cn-hangzhou.aliyuncs.com/stuuudy/video-measure-queue-test:latest
  46. }
  47. start(){
  48. check_docker
  49. cid=`docker ps |grep "video-measure-queue-test:latest"|grep -v grep|awk '{print $1}'`
  50. if [ $cid ];then
  51. echo "video-measure-queue-test already started !"
  52. echo "-----------------------------"
  53. else
  54. docker login --username=stuuudys --password=Qingqu@2019 registry-internal.cn-hangzhou.aliyuncs.com
  55. docker run --cap-add=SYS_PTRACE -d -it --network host --restart=always -v /datalog/weblog/java/stuuudy.com/measurevideoqueue/:/datalog/weblog/java/stuuudy.com/measurevideoqueue/ registry-internal.cn-hangzhou.aliyuncs.com/stuuudy/video-measure-queue-test:latest
  56. fi
  57. }
  58. case "$1" in
  59. 'start')
  60. start
  61. ;;
  62. 'stop')
  63. stop
  64. ;;
  65. 'restart')
  66. stop
  67. start
  68. ;;
  69. 'rollback')
  70. rollback
  71. ;;
  72. 'deploy')
  73. deploy
  74. ;;
  75. 'status')
  76. check_up
  77. ;;
  78. 'info')
  79. info
  80. ;;
  81. *)
  82. echo "Usage: $0 {start|stop|restart|rollback|deploy|status|info}"
  83. exit 1
  84. ;;
  85. esac