Create Dockerfile
Browse files- Dockerfile +34 -0
Dockerfile
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Dockerfile
|
| 2 |
+
|
| 3 |
+
# 1. 使用一个包含 Python 的基础镜像
|
| 4 |
+
FROM python:3.9-slim
|
| 5 |
+
|
| 6 |
+
# 2. 设置工作目录
|
| 7 |
+
WORKDIR /app
|
| 8 |
+
|
| 9 |
+
# 3. 安装 rclone
|
| 10 |
+
# (你可以检查 rclone 官网获取最新的稳定版本号)
|
| 11 |
+
ARG RCLONE_VERSION=v1.66.0 # 指定 rclone 版本
|
| 12 |
+
RUN apt-get update && apt-get install -y curl unzip fuse && \
|
| 13 |
+
curl -O https://downloads.rclone.org/${RCLONE_VERSION}/rclone-${RCLONE_VERSION}-linux-amd64.zip && \
|
| 14 |
+
unzip rclone-${RCLONE_VERSION}-linux-amd64.zip && \
|
| 15 |
+
mv rclone-${RCLONE_VERSION}-linux-amd64/rclone /usr/local/bin/ && \
|
| 16 |
+
chown root:root /usr/local/bin/rclone && \
|
| 17 |
+
chmod 755 /usr/local/bin/rclone && \
|
| 18 |
+
# 清理
|
| 19 |
+
rm -rf rclone-${RCLONE_VERSION}-linux-amd64.zip rclone-${RCLONE_VERSION}-linux-amd64 && \
|
| 20 |
+
apt-get clean && rm -rf /var/lib/apt/lists/*
|
| 21 |
+
|
| 22 |
+
# 4. 复制 Python 依赖文件并安装
|
| 23 |
+
COPY requirements.txt .
|
| 24 |
+
RUN pip install --no-cache-dir -r requirements.txt
|
| 25 |
+
|
| 26 |
+
# 5. 复制 Gradio 应用代码
|
| 27 |
+
COPY app.py .
|
| 28 |
+
|
| 29 |
+
# 6. 暴露 Gradio 默认端口 (可选,HF 会处理)
|
| 30 |
+
EXPOSE 7860
|
| 31 |
+
|
| 32 |
+
# 7. 定义容器启动命令
|
| 33 |
+
# 读取 HF Secret 中的配置内容写入文件,然后启动 Gradio
|
| 34 |
+
CMD bash -c 'mkdir -p /root/.config/rclone && echo "$RCLONE_CONFIG_CONTENT" > /root/.config/rclone/rclone.conf && python app.py'
|