flzta commited on
Commit
f34c42c
·
verified ·
1 Parent(s): 8a28937

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +16 -27
Dockerfile CHANGED
@@ -7,12 +7,13 @@ WORKDIR /opt/cloudreve
7
  # 设置时区
8
  ENV TZ=Asia/Shanghai
9
 
10
- # 更新包列表并安装必要的软件包:wget, unzip, python3, pip, bash, tar, gzip, jq, curl, aria2
11
  # 清理 apk 缓存以减小镜像体积
12
  RUN apk update && \
13
- apk add --no-cache wget unzip python3 py3-pip bash tar gzip jq curl aria2 && \
14
  rm -rf /var/cache/apk/*
15
 
 
16
  # 下载并解压 Cloudreve 3.8.3
17
  RUN wget -O cloudreve.tar.gz "https://github.com/cloudreve/Cloudreve/releases/download/3.8.3/cloudreve_3.8.3_linux_amd64.tar.gz" && \
18
  tar -zxvf cloudreve.tar.gz -C /opt/cloudreve/ && \
@@ -35,41 +36,29 @@ COPY sync_data.sh /opt/cloudreve/
35
  RUN chmod +x /opt/cloudreve/sync_data.sh
36
 
37
  # **创建 Aria2 下载目录并设置权限**
38
- # 注意:777 权限过于宽松,但在简单场景下可以避免权限问题。生产环境建议使用更严格的权限管理。
39
  RUN mkdir -p /opt/cloudreve/aria2_downloads && chmod -R 777 /opt/cloudreve/aria2_downloads
40
 
41
  # **确保 /opt/cloudreve 目录及其内容具有必要的权限**
42
- # Cloudreve 进程和 Aria2 可能需要写入配置文件、数据库、日志等
43
  RUN chmod -R 777 /opt/cloudreve/
44
 
45
  # 暴露 Cloudreve 使用的端口
46
  EXPOSE 5212
47
- # Aria2 RPC 端口 (如果需要从外部访问,但通常不需要)
48
- # EXPOSE 6800
49
 
50
- # 设置启动命令
51
- # 1. 后台启动 Aria2,使用优化后的参数
52
- # 2. 前台运行 sync_data.sh 脚本,该脚本会处理备份/恢复逻辑,并在最后启动 Cloudreve
53
  CMD aria2c --enable-rpc --rpc-listen-port=6800 --rpc-listen-all=true --rpc-allow-origin-all \
54
- --daemon=true --enable-dht=true \
55
  --bt-tracker="udp://tracker.opentrackr.org:1337/announce,udp://tracker.openbittorrent.com:6969/announce,udp://tracker.torrent.eu.org:451/announce,udp://tracker.coppersurfer.tk:6969/announce,udp://tracker.dler.org:6969/announce,udp://tracker.leechers-paradise.org:6969/announce,udp://tracker.moeking.me:6969/announce" \
56
- -s 64 \
57
  -x 16 \
58
  -d /opt/cloudreve/aria2_downloads \
59
- --max-concurrent-downloads=5 \
60
- --max-overall-download-limit=0 \
61
  --max-download-limit=0 \
62
- --max-overall-upload-limit=5M \
63
- --max-upload-limit=1M \
64
- # --- 修改日志级别为 debug ---
65
- --console-log-level=debug \
66
- # --------------------------
67
- --rpc-secret=112325 & \
68
- /opt/cloudreve/sync_data.sh
69
-
70
- # 注意: --rpc-secret=YOUR_RPC_SECRET 是可选的。
71
- # 如果你在 CMD 中添加了这个参数 (例如 --rpc-secret=mysecret),
72
- # 那么你必须在 Cloudreve 后台 -> 管理面板 -> 参数设置 -> 离线下载 -> RPC 授权令牌 中填入完全相同的密钥 (mysecret)。
73
- # 如果你不打算使用 RPC 密钥,请从上面的 CMD 命令中移除 --rpc-secret=YOUR_RPC_SECRET 部分,
74
- # 并确保 Cloudreve 后台的 RPC 授权令牌字段是空的。
75
- # 你可以根据需要调整 --max-overall-upload-limit 和 --max-upload-limit 的值,或者设为 0 (不限制)。
 
7
  # 设置时区
8
  ENV TZ=Asia/Shanghai
9
 
10
+ # 更新包列表并安装必要的软件包:wget, unzip, python3, pip, bash, tar, gzip, jq, curl, aria2, netcat-openbsd
11
  # 清理 apk 缓存以减小镜像体积
12
  RUN apk update && \
13
+ apk add --no-cache wget unzip python3 py3-pip bash tar gzip jq curl aria2 netcat-openbsd && \
14
  rm -rf /var/cache/apk/*
15
 
16
+ # --- 后续内容保持不变 ---
17
  # 下载并解压 Cloudreve 3.8.3
18
  RUN wget -O cloudreve.tar.gz "https://github.com/cloudreve/Cloudreve/releases/download/3.8.3/cloudreve_3.8.3_linux_amd64.tar.gz" && \
19
  tar -zxvf cloudreve.tar.gz -C /opt/cloudreve/ && \
 
36
  RUN chmod +x /opt/cloudreve/sync_data.sh
37
 
38
  # **创建 Aria2 下载目录并设置权限**
 
39
  RUN mkdir -p /opt/cloudreve/aria2_downloads && chmod -R 777 /opt/cloudreve/aria2_downloads
40
 
41
  # **确保 /opt/cloudreve 目录及其内容具有必要的权限**
 
42
  RUN chmod -R 777 /opt/cloudreve/
43
 
44
  # 暴露 Cloudreve 使用的端口
45
  EXPOSE 5212
 
 
46
 
47
+ # --- CMD 内容根据你的最终选择保持不变 (例如使用 debug 日志和资源限制的版本) ---
48
+ # 例如:
 
49
  CMD aria2c --enable-rpc --rpc-listen-port=6800 --rpc-listen-all=true --rpc-allow-origin-all \
50
+ --enable-dht=true \
51
  --bt-tracker="udp://tracker.opentrackr.org:1337/announce,udp://tracker.openbittorrent.com:6969/announce,udp://tracker.torrent.eu.org:451/announce,udp://tracker.coppersurfer.tk:6969/announce,udp://tracker.dler.org:6969/announce,udp://tracker.leechers-paradise.org:6969/announce,udp://tracker.moeking.me:6969/announce" \
52
+ -s 32 \
53
  -x 16 \
54
  -d /opt/cloudreve/aria2_downloads \
55
+ --max-concurrent-downloads=2 \
56
+ --max-overall-download-limit=1M \
57
  --max-download-limit=0 \
58
+ --max-overall-upload-limit=256K \
59
+ --max-upload-limit=128K \
60
+ --rpc-secret=YOUR_RPC_SECRET \
61
+ --log-level=debug \
62
+ --log=- \
63
+ --daemon=true & \
64
+ /opt/cloudreve/sync_data.sh