Spaces:
Running
Running
Upload 4 files
Browse files- Dockerfile +8 -6
- app.py +8 -7
Dockerfile
CHANGED
|
@@ -9,9 +9,11 @@ RUN apk add --no-cache python3 py3-pip && \
|
|
| 9 |
ENV PATH="/opt/venv/bin:$PATH"
|
| 10 |
WORKDIR /app
|
| 11 |
|
| 12 |
-
COPY app.py /app/app.py
|
| 13 |
-
COPY start.sh /app/start.sh
|
| 14 |
-
RUN chmod +x /app/start.sh
|
| 15 |
-
|
| 16 |
-
EXPOSE 7860
|
| 17 |
-
|
|
|
|
|
|
|
|
|
| 9 |
ENV PATH="/opt/venv/bin:$PATH"
|
| 10 |
WORKDIR /app
|
| 11 |
|
| 12 |
+
COPY app.py /app/app.py
|
| 13 |
+
COPY start.sh /app/start.sh
|
| 14 |
+
RUN chmod +x /app/start.sh
|
| 15 |
+
|
| 16 |
+
EXPOSE 7860
|
| 17 |
+
# 关键:基础镜像自带 ENTRYPOINT=/docker-entrypoint.sh,会忽略/吞掉 CMD
|
| 18 |
+
# 这里必须显式覆盖 ENTRYPOINT,才能执行我们自己的启动脚本(先起 telegram-bot-api 内部端口,再起对外 7860 代理)
|
| 19 |
+
ENTRYPOINT ["/app/start.sh"]
|
app.py
CHANGED
|
@@ -1,12 +1,13 @@
|
|
| 1 |
-
|
| 2 |
-
|
| 3 |
-
from fastapi
|
| 4 |
-
import
|
| 5 |
-
|
|
|
|
| 6 |
# 内部真实 Bot API Server(telegram-bot-api)监听端口
|
| 7 |
# 注意:外网端口必须是 7860(HF 会检查),但 Bot API 可以只跑在容器内部端口(默认 8081)
|
| 8 |
-
UPSTREAM = f"http://127.0.0.1:{
|
| 9 |
-
app = FastAPI()
|
| 10 |
|
| 11 |
@app.get("/")
|
| 12 |
async def root():
|
|
|
|
| 1 |
+
import os
|
| 2 |
+
|
| 3 |
+
from fastapi import FastAPI, Request
|
| 4 |
+
from fastapi.responses import StreamingResponse
|
| 5 |
+
import httpx
|
| 6 |
+
|
| 7 |
# 内部真实 Bot API Server(telegram-bot-api)监听端口
|
| 8 |
# 注意:外网端口必须是 7860(HF 会检查),但 Bot API 可以只跑在容器内部端口(默认 8081)
|
| 9 |
+
UPSTREAM = f"http://127.0.0.1:{os.environ.get('TELEGRAM_UPSTREAM_PORT', '8081')}"
|
| 10 |
+
app = FastAPI()
|
| 11 |
|
| 12 |
@app.get("/")
|
| 13 |
async def root():
|