longvideoapi_docker.sh 2.3 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. python /home/sh/update_longvideoapi.py 0
  39. echo "-----------------------------"
  40. echo "检查vlogapi容器是否存在"
  41. echo "-----------------------------"
  42. docker stop $(docker ps -a|grep -v IMAGE|awk '{print $1}')
  43. docker rm -f $(docker ps -a|grep -v IMAGE|awk '{print $1}')
  44. docker rmi registry-vpc.cn-hangzhou.aliyuncs.com/stuuudy/vlogapi:latest
  45. }
  46. start(){
  47. cid=`docker ps |grep "vlogapi:latest"|grep -v grep|awk '{print $1}'`
  48. if [ $cid ];then
  49. echo "vlogapi already started !"
  50. echo "-----------------------------"
  51. else
  52. docker login --username=stuuudys --password=Qingqu@2019 registry-vpc.cn-hangzhou.aliyuncs.com
  53. #docker run --cap-add=SYS_PTRACE -d -it -p 8080:8185 --restart=always registry-vpc.cn-hangzhou.aliyuncs.com/stuuudy/longvideoapi:latest
  54. docker run --cap-add=SYS_PTRACE -d -it --name vlogapi --restart=always --network host registry-vpc.cn-hangzhou.aliyuncs.com/stuuudy/vlogapi:latest
  55. check_up
  56. python /home/sh/slb_scan.py
  57. fi
  58. }
  59. case "$1" in
  60. 'start')
  61. start
  62. ;;
  63. 'stop')
  64. stop
  65. ;;
  66. 'restart')
  67. stop
  68. start
  69. ;;
  70. 'rollback')
  71. rollback
  72. ;;
  73. 'deploy')
  74. deploy
  75. ;;
  76. 'status')
  77. check_up
  78. ;;
  79. 'info')
  80. info
  81. ;;
  82. *)
  83. echo "Usage: $0 {start|stop|restart|rollback|deploy|status|info}"
  84. exit 1
  85. ;;
  86. esac