From 10643c1a2fceab0e912ff3462ff4bcd071149c1b Mon Sep 17 00:00:00 2001 From: wang <3202024218@qq.com> Date: Wed, 25 Jun 2025 09:02:29 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=AE=B9=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- goldminer/backend/Dockerfile | 11 +++++++++-- goldminer/backend/requirements.txt | 2 +- goldminer/docker-compose.yml | 3 +++ goldminer/frontend/nginx.conf | 13 +++++++++++++ 4 files changed, 26 insertions(+), 3 deletions(-) diff --git a/goldminer/backend/Dockerfile b/goldminer/backend/Dockerfile index cf5477e5..419dd156 100644 --- a/goldminer/backend/Dockerfile +++ b/goldminer/backend/Dockerfile @@ -33,6 +33,13 @@ HEALTHCHECK --interval=30s --timeout=30s --start-period=5s --retries=3 \ # 暴露端口 EXPOSE 5000 +EXPOSE 5001/udp -# Command to run the application using Gunicorn as a production server -CMD ["gunicorn", "--worker-class", "eventlet", "-w", "1", "--bind", "0.0.0.0:5000", "app:app"] \ No newline at end of file +# 创建启动脚本 +RUN echo '#!/bin/bash\n\ +python voice_udp_server.py &\n\ +gunicorn --workers 2 --bind 0.0.0.0:5000 app:app\n\ +' > /app/start.sh && chmod +x /app/start.sh + +# 使用启动脚本启动应用 +CMD ["/app/start.sh"] \ No newline at end of file diff --git a/goldminer/backend/requirements.txt b/goldminer/backend/requirements.txt index 10ede357..94af62f9 100644 --- a/goldminer/backend/requirements.txt +++ b/goldminer/backend/requirements.txt @@ -5,6 +5,6 @@ flask-socketio==5.3.2 werkzeug==2.2.3 sqlalchemy==1.4.46 pymysql==1.0.3 -eventlet==0.33.3 +eventlet==0.30.2 gunicorn==20.1.0 python-dotenv==1.0.0 \ No newline at end of file diff --git a/goldminer/docker-compose.yml b/goldminer/docker-compose.yml index 3790ded7..376d5808 100644 --- a/goldminer/docker-compose.yml +++ b/goldminer/docker-compose.yml @@ -20,6 +20,9 @@ services: timeout: 10s retries: 3 start_period: 40s + ports: + - "5000:5000" + - "5001:5001/udp" volumes: - backend_logs:/app/logs networks: diff --git a/goldminer/frontend/nginx.conf b/goldminer/frontend/nginx.conf index e54036df..3a6aca23 100644 --- a/goldminer/frontend/nginx.conf +++ b/goldminer/frontend/nginx.conf @@ -62,9 +62,22 @@ server { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_cache_bypass $http_upgrade; proxy_read_timeout 86400s; # 设置更长的读取超时,适合WebSocket连接 + proxy_send_timeout 86400s; # 增加发送超时 + proxy_connect_timeout 7d; # 增加连接超时 proxy_buffering off; } + # 支持UDP媒体流通过TURN服务器转发 + location /rtc/ { + proxy_pass http://backend:5000; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_read_timeout 86400s; + } + # 压缩设置 gzip on; gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;