105 lines
2.2 KiB
Markdown
105 lines
2.2 KiB
Markdown
# 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
|