调整同步配置:减少下载线程数,优化 sync 命令,添加 README
This commit is contained in:
104
README.md
Normal file
104
README.md
Normal file
@@ -0,0 +1,104 @@
|
|||||||
|
# iCloud Photos Sync
|
||||||
|
|
||||||
|
使用 Docker 自动同步 iCloud 照片到本地。
|
||||||
|
|
||||||
|
## 快速开始
|
||||||
|
|
||||||
|
### 1. 配置
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cp .env.example .env
|
||||||
|
```
|
||||||
|
|
||||||
|
编辑 `.env` 文件:
|
||||||
|
|
||||||
|
```env
|
||||||
|
APPLE_ID=your@icloud.com
|
||||||
|
SYNC_INTERVAL=86400
|
||||||
|
PHOTOS_PATH=./photos
|
||||||
|
```
|
||||||
|
|
||||||
|
### 2. 启动
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker compose up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
### 3. 认证
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# PowerShell
|
||||||
|
.\icloud.ps1 auth
|
||||||
|
|
||||||
|
# Bash
|
||||||
|
./icloud.sh auth
|
||||||
|
```
|
||||||
|
|
||||||
|
按提示输入密码和 Apple 发送的验证码。
|
||||||
|
|
||||||
|
## 管理命令
|
||||||
|
|
||||||
|
```bash
|
||||||
|
.\icloud.ps1 <命令> # PowerShell
|
||||||
|
./icloud.sh <命令> # Bash
|
||||||
|
```
|
||||||
|
|
||||||
|
| 命令 | 说明 |
|
||||||
|
|------|------|
|
||||||
|
| `auth` | 重新认证(Cookie 过期时使用) |
|
||||||
|
| `logs` | 查看实时日志 |
|
||||||
|
| `status` | 查看容器状态 |
|
||||||
|
| `restart` | 重启容器 |
|
||||||
|
| `sync` | 立即触发同步 |
|
||||||
|
|
||||||
|
## 配置说明
|
||||||
|
|
||||||
|
### 环境变量 (.env)
|
||||||
|
|
||||||
|
| 变量 | 说明 | 默认值 |
|
||||||
|
|------|------|--------|
|
||||||
|
| `APPLE_ID` | Apple ID | 必填 |
|
||||||
|
| `SYNC_INTERVAL` | 同步间隔(秒) | 86400 (24h) |
|
||||||
|
| `PHOTOS_PATH` | 照片保存路径 | ./photos |
|
||||||
|
|
||||||
|
### Docker Compose 配置
|
||||||
|
|
||||||
|
更多选项可在 `docker-compose.yml` 中配置:
|
||||||
|
|
||||||
|
| 变量 | 说明 |
|
||||||
|
|------|------|
|
||||||
|
| `folder_structure` | 文件夹结构,如 `{:%Y/%m}` |
|
||||||
|
| `skip_videos` | 跳过视频 |
|
||||||
|
| `skip_live_photos` | 跳过实况照片 |
|
||||||
|
| `convert_heic_to_jpeg` | HEIC 转 JPEG |
|
||||||
|
| `auto_delete` | 同步删除 |
|
||||||
|
| `recent_only` | 只下载最近 N 张 |
|
||||||
|
| `until_found` | 增量同步优化 |
|
||||||
|
|
||||||
|
完整配置参考:[boredazfcuk/docker-icloudpd](https://github.com/boredazfcuk/docker-icloudpd/blob/master/CONFIGURATION.md)
|
||||||
|
|
||||||
|
## 目录结构
|
||||||
|
|
||||||
|
```
|
||||||
|
icloud-sync/
|
||||||
|
├── docker-compose.yml # Docker 配置
|
||||||
|
├── .env # 环境变量(不提交到 Git)
|
||||||
|
├── .env.example # 环境变量示例
|
||||||
|
├── icloud.ps1 # PowerShell 管理脚本
|
||||||
|
├── icloud.sh # Bash 管理脚本
|
||||||
|
├── config/ # Cookie 和认证信息
|
||||||
|
└── photos/ # 下载的照片
|
||||||
|
└── 2026/
|
||||||
|
└── 01/
|
||||||
|
```
|
||||||
|
|
||||||
|
## 注意事项
|
||||||
|
|
||||||
|
- Cookie 约 30 天过期,届时需重新认证:`.\icloud.ps1 auth`
|
||||||
|
- 首次同步大量照片可能需要较长时间
|
||||||
|
- 建议设置 `skip_check: "true"` 以提高大库同步性能
|
||||||
|
- 中国区 iCloud 需设置 `icloud_china` 和 `auth_china` 为 `true`
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
MIT
|
||||||
@@ -17,7 +17,7 @@ services:
|
|||||||
synchronisation_interval: ${SYNC_INTERVAL:-86400} # 同步间隔(秒):21600(6h)/43200(12h)/86400(24h)
|
synchronisation_interval: ${SYNC_INTERVAL:-86400} # 同步间隔(秒):21600(6h)/43200(12h)/86400(24h)
|
||||||
download_delay: 0 # 首次下载延迟(分钟)
|
download_delay: 0 # 首次下载延迟(分钟)
|
||||||
skip_check: "true" # 跳过新文件检查(大库必须开启)
|
skip_check: "true" # 跳过新文件检查(大库必须开启)
|
||||||
download_threads: 10 # 下载线程数
|
download_threads: 4 # 下载线程数
|
||||||
|
|
||||||
# ===== 文件类型 =====
|
# ===== 文件类型 =====
|
||||||
photo_size: original # 照片尺寸:original/medium/thumb/adjusted/alternative
|
photo_size: original # 照片尺寸:original/medium/thumb/adjusted/alternative
|
||||||
|
|||||||
@@ -47,8 +47,9 @@ switch ($Command) {
|
|||||||
Write-Host "完成!" -ForegroundColor Green
|
Write-Host "完成!" -ForegroundColor Green
|
||||||
}
|
}
|
||||||
"sync" {
|
"sync" {
|
||||||
Write-Host "立即触发同步..." -ForegroundColor Yellow
|
Write-Host "立即触发同步 (重启容器)..." -ForegroundColor Yellow
|
||||||
docker exec icloudpd sync-icloud.sh --DownloadOnce
|
docker restart icloudpd
|
||||||
|
Write-Host "同步已触发,使用 '.\icloud.ps1 logs' 查看进度" -ForegroundColor Green
|
||||||
}
|
}
|
||||||
default {
|
default {
|
||||||
Write-Host "未知命令: $Command" -ForegroundColor Red
|
Write-Host "未知命令: $Command" -ForegroundColor Red
|
||||||
|
|||||||
Reference in New Issue
Block a user