websiteMonitor.sh 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #!/bin/bash
  2. #启动docker
  3. systemctl start docker
  4. #下载chromedp服务
  5. rm -rf /mnt/chromedp.tgz
  6. #wget -P /mnt http://spdata.jianyu360.com:60911/chromedp.tgz
  7. wget -P /mnt/zxl http://192.168.3.149:60911/webSiteMonitor.tgz
  8. cd /mnt/zxl
  9. tar -xzvf webSiteMonitor.tgz
  10. cd webSiteMonitor
  11. chmod 777 webSiteMonitor
  12. sleep 1s
  13. # 定义容器名称和镜像名称列表
  14. container_names=("chromedp1")
  15. image_name="docker.io/chromedp/headless-shell"
  16. base_port=9220
  17. # 循环遍历容器列表
  18. for ((i=1; i<=${#container_names[@]}; i++)); do
  19. container_name="chromedp"${i}
  20. port=$((base_port + i)) # 计算映射到宿主机的端口号
  21. #image_name=${image_names[$i]}
  22. # 检查容器是否已经存在,如果存在则停止并删除容器
  23. if [[ "$(docker ps -a -q -f name=${container_name})" ]]; then
  24. docker stop ${container_name}
  25. docker rm ${container_name}
  26. fi
  27. # 创建并启动容器
  28. #docker run -itd --name=${container_name} --privileged -v /mnt/zxl/spider_com:/mnt/zxl ${image_name}
  29. docker run -itd --name=${container_name} --privileged -p ${port}:9222 -v /mnt/zxl/webSiteMonitor:/mnt/zxl ${image_name}
  30. # 执行启动服务脚本
  31. sleep 1s
  32. #更新docke内时间
  33. docker exec ${container_name} cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
  34. #启动chromedp服务
  35. new_binary_name="webSiteMonitor${port}"
  36. docker exec ${container_name} bash -c "cp /mnt/zxl/webSiteMonitor /mnt/zxl/${new_binary_name}"
  37. docker exec -it ${container_name} /bin/bash -c "cd /mnt/zxl && nohup ./${new_binary_name} > ${container_name}.log 2>&1 & sleep 1s"
  38. done
  39. #sed -i -e 's/\r$//' reload.sh
  40. #sed -i -e 's/\r$//' websiteMonitor.sh