docker-run.sh 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. #!/bin/bash
  2. # docker-run.sh - Docker 启动脚本(连接远程 Redis)
  3. echo "🐳 使用 Docker 启动抖音 Cookie 生成器(连接远程 Redis)"
  4. # 检查 Docker 是否安装
  5. if ! command -v docker &> /dev/null; then
  6. echo "❌ Docker 未安装,请先安装 Docker"
  7. exit 1
  8. fi
  9. # 检查 docker compose 是否可用
  10. if ! docker compose version &> /dev/null; then
  11. echo "❌ Docker Compose 不可用"
  12. exit 1
  13. fi
  14. # 创建日志目录
  15. mkdir -p logs
  16. # 测试远程 Redis 连接
  17. echo "🔗 测试远程 Redis 连接..."
  18. docker run --rm -it \
  19. -e REDIS_HOST=r-t4n023zec9wyjeer0spd.redis.singapore.rds.aliyuncs.com \
  20. -e REDIS_PORT=6379 \
  21. -e REDIS_DB=15 \
  22. -e REDIS_USERNAME=denet_crawler \
  23. -e REDIS_PASSWORD=denet_crawler2023 \
  24. python:3.10-slim \
  25. python -c "
  26. import redis
  27. try:
  28. r = redis.Redis(
  29. host='r-t4n023zec9wyjeer0spd.redis.singapore.rds.aliyuncs.com',
  30. port=6379,
  31. db=15,
  32. username='denet_crawler',
  33. password='denet_crawler2023',
  34. ssl=True,
  35. ssl_cert_reqs=None
  36. )
  37. r.ping()
  38. print('✅ Redis 连接成功')
  39. except Exception as e:
  40. print(f'❌ Redis 连接失败: {e}')
  41. exit(1)
  42. "
  43. if [ $? -ne 0 ]; then
  44. echo "❌ Redis 连接测试失败,请检查网络和配置"
  45. exit 1
  46. fi
  47. # 构建并启动服务
  48. echo "🚀 构建和启动 Docker 服务..."
  49. docker compose up -d --build
  50. echo "✅ 服务已启动"
  51. echo "🔗 使用远程 Redis: r-t4n023zec9wyjeer0spd.redis.singapore.rds.aliyuncs.com"
  52. echo "📊 查看日志: docker compose logs -f cookie-generator"
  53. echo "🛑 停止服务: docker compose down"
  54. echo "🔧 进入容器: docker compose exec cookie-generator bash"