icloudpd

icloudpd

Aplicación Docker from Womabre's Repository

Visión general

An Alpine Linux Docker container for ndbroadbent's iCloud Photos Downloader. I use it for syncing the photo streams of all the iDevices in my house back to my server because it's the only way of backing up multiple devices to a single location. It uses the system keyring to securely store credentials, has HEIC to JPG conversion capability, and can send Telegram, Prowl, Pushover, WebHook, DingTalk, Discord, openhab, IYUU and WeCom notifications. It is recommended to use the keyring to securely store credentials. Please connect to the container and run `sync-icloud.sh --Initialise` command manually to start the process of saving your password to the keyring and Apple sends a confirmation code via text or 2FA code to your device which needs to be entered into the console. You can also run this command from the Unraid console to start the authentication process. `docker exec -it icloudpd sync-icloud.sh --Initialise` Create a `.mounted` file inside `iCloud` folder in the photos directory for the container to start syncing photos. This file MUST be created manually and sync will not start without it.

Argumentos en tiempo de ejecución

Red
bridge
Concha
sh
Privilegiado
false

Configuración de plantillas

Apple IDVariable

Apple ID used to access iCloud.

Objetivo
apple_id
Por defecto
your@appleid.com
Time ZoneVariable

Sets container timezone. Example: Europe/Amsterdam

Objetivo
TZ
Por defecto
UTC
Config PathPathrw

Stores configuration, cookies, and keyring.

Objetivo
/config
Por defecto
/mnt/user/appdata/icloudpd
Download PathPathrw,slave

Where downloaded photos and videos will be stored. A .mounted file must exist inside this folder before syncing will start.

Objetivo
/home/user/iCloud
Por defecto
/mnt/user/iCloud
Download IntervalVariable

Seconds between downloads. Valid values: 21600 (6h), 43200 (12h), 86400 (24h), 129600 (36h), 172800 (48h), 604800 (7d). Defaults to 86400 if an invalid value is set.

Objetivo
download_interval
Por defecto
86400
Download DelayVariable

Delay first download in minutes (0-60). Use to stagger multiple containers.

Objetivo
download_delay
Por defecto
0
Folder StructureVariable

Folder structure for downloaded files. Use 'none' for a flat structure. Default: {:%Y/%m/%d}

Objetivo
folder_structure
Por defecto
{:%Y/%m/%d}
Albums With DatesVariable

Organize albums into subfolders by date (uses folder_structure). Default: false

Objetivo
albums_with_dates
Por defecto
false
Libraries With DatesVariable

Organize libraries into subfolders by date (uses folder_structure). Default: false

Objetivo
libraries_with_dates
Por defecto
false
Authentication TypeVariable

Type of authentication on your iCloud account. Use 'MFA' or 'Web' (if no MFA). Default: MFA

Objetivo
authentication_type
Por defecto
MFA
Notification DaysVariable

Notify n days before MFA cookie expires. A single notification is sent per day. Default: 7

Objetivo
notification_days
Por defecto
7
Single PassVariable

Set to true to exit after a single sync instead of looping. If used, set container restart policy to 'no'.

Objetivo
single_pass
Por defecto
false
Skip CheckVariable

Skip the check for new files. Recommended for libraries with more than a few thousand photos. Default: false

Objetivo
skip_check
Por defecto
false
Photo SizeVariable

Size to download: original, medium, thumb, adjusted, alternative. Can be comma-separated for multiple sizes. Default: original

Objetivo
photo_size
Por defecto
original
Skip Live PhotosVariable

Skip downloading Live Photos. Default: false

Objetivo
skip_live_photos
Por defecto
false
Live Photo SizeVariable

Live photo size: original, medium, or thumb. Ignored if skip_live_photos is true. Default: original

Objetivo
live_photo_size
Por defecto
original
Skip VideosVariable

Skip downloading videos. Default: false

Objetivo
skip_videos
Por defecto
false
Recent OnlyVariable

Only download this number of recently added photos. Leave empty to download all.

Objetivo
recent_only
Until FoundVariable

Download recent photos until n previously downloaded consecutive photos are found. Leave empty to download all.

Objetivo
until_found
Photo AlbumVariable

Download only from specific album(s). Comma-separated. Use 'all albums' to download all albums.

Objetivo
photo_album
Skip AlbumVariable

Skip specific albums when using photo_album. Example: All Photos,Videos,Screenshots

Objetivo
skip_album
Photo LibraryVariable

Download only from specific shared library/libraries. Comma-separated. Use 'all libraries' to download all.

Objetivo
photo_library
Skip LibraryVariable

Skip specific libraries when using photo_library. Example: PrimarySync

Objetivo
skip_library
Align RAWVariable

For assets with RAW and JPEG, treat RAW in specified size: original, alternative, or as-is. Default: as-is

Objetivo
align_raw
Por defecto
as-is
File Match PolicyVariable

Policy to identify and de-duplicate files. Options: name-size-dedup-with-suffix, name-id7. Default: name-size-dedup-with-suffix

Objetivo
file_match_policy
Por defecto
name-size-dedup-with-suffix
Convert HEIC to JPEGVariable

Convert downloaded HEIC files to JPEG, retaining the original. Default: false

Objetivo
convert_heic_to_jpeg
Por defecto
false
JPEG QualityVariable

JPEG conversion quality (0-100). Default: 90

Objetivo
jpeg_quality
Por defecto
90
JPEG PathVariable

Custom path for converted JPEGs. Defaults to download path if not set.

Objetivo
jpeg_path
Auto DeleteVariable

Scan 'Recently Deleted' folder and delete those files locally. Default: false

Objetivo
auto_delete
Por defecto
false
Delete After DownloadVariable

Move file to Recently Deleted after download. Cannot be combined with auto_delete. Default: false

Objetivo
delete_after_download
Por defecto
false
Delete Accompanying FilesVariable

Delete generated JPG and MOV files that accompany HEICs (live photo MOVs, converted JPEGs). Default: false

Objetivo
delete_accompanying
Por defecto
false
Delete Empty DirectoriesVariable

Delete empty directories after sync. Only runs if folder_structure is not 'none'. Default: false

Objetivo
delete_empty_directories
Por defecto
false
Set Exif DateTimeVariable

Write DateTimeOriginal EXIF tag from file creation date. Warning: alters local file and causes re-download with dedup suffix. Default: false

Objetivo
set_exif_datetime
Por defecto
false
Keep UnicodeVariable

Keep unicode characters in file names. Set to false to strip non-ASCII chars. Default: false

Objetivo
keep_unicode
Por defecto
false
Live Photo MOV Filename PolicyVariable

Filename policy for Live Photo MOV files: suffix (adds _HEVC) or original (same name as photo). Default: suffix

Objetivo
live_photo_mov_filename_policy
Por defecto
suffix
Sideways Copy VideosVariable

Copy or move downloaded videos to a separate directory (video_path). Default: false

Objetivo
sideways_copy_videos
Por defecto
false
Sideways Copy Videos ModeVariable

How to handle sideways video copy: 'copy' (leave original) or 'move' (requires delete_after_download=true). Default: copy

Objetivo
sideways_copy_videos_mode
Por defecto
copy
Video PathVariable

Destination directory for sideways video copy/move. Required when sideways_copy_videos is true.

Objetivo
video_path
Nextcloud UploadVariable

Enable upload to Nextcloud after download. Default: false

Objetivo
nextcloud_upload
Por defecto
false
Nextcloud URLVariable

Nextcloud server URL. Example: https://my.server.local/nextcloud/

Objetivo
nextcloud_url
Nextcloud UsernameVariable

Username of the Nextcloud account to upload to.

Objetivo
nextcloud_username
Nextcloud PasswordVariable

Password for the Nextcloud account.

Objetivo
nextcloud_password
Nextcloud Target DirVariable

Root folder in Nextcloud to place files in. Cannot be the root of the server.

Objetivo
nextcloud_target_dir
Nextcloud DeleteVariable

Delete file from Nextcloud when removed locally. Requires auto_delete=true. Default: false

Objetivo
nextcloud_delete
Por defecto
false
Notification TypeVariable

Notification provider to use. Options: Prowl, Pushover, Telegram, Webhook, openhab, Dingtalk, Discord, IYUU, WeCom, Gotify, Bark, msmtp, signal. Leave empty to disable.

Objetivo
notification_type
Notification TitleVariable

Title used in notifications. Default: boredazfcuk/iCloudPD

Objetivo
notification_title
Por defecto
boredazfcuk/iCloudPD
Download NotificationsVariable

Send notifications with a summary after file downloads. Default: true

Objetivo
download_notifications
Por defecto
true
Delete NotificationsVariable

Send notifications with a summary after file deletions. Default: true

Objetivo
delete_notifications
Por defecto
true
Startup NotificationVariable

Send a notification when the container starts. Default: true

Objetivo
startup_notification
Por defecto
true
Silent File NotificationsVariable

Send low-priority (silent) notifications for file downloads and deletions. Default: false

Objetivo
silent_file_notifications
Por defecto
false
msmtp HostVariable

[msmtp] SMTP server hostname.

Objetivo
msmtp_host
msmtp PortVariable

[msmtp] SMTP server port. Normally 465 or 587. Default: 587

Objetivo
msmtp_port
Por defecto
587
msmtp UsernameVariable

[msmtp] SMTP login username.

Objetivo
msmtp_user
msmtp PasswordVariable

[msmtp] SMTP login password.

Objetivo
msmtp_pass
msmtp From AddressVariable

[msmtp] Sender email address.

Objetivo
msmtp_from
msmtp TLSVariable

[msmtp] Enable TLS encryption: on or off. Default: on

Objetivo
msmtp_tls
Por defecto
on
msmtp AuthVariable

[msmtp] Enable SMTP authentication: on or off. Default: on

Objetivo
msmtp_auth
Por defecto
on
msmtp Extra ArgsVariable

[msmtp] Optional extra arguments for msmtp. Example: --tls-starttls=off

Objetivo
msmtp_args
Gotify Server URLVariable

[Gotify] Server hostname. Example: server.domain.tld (no port, no protocol). Use gotify_https to toggle HTTPS.

Objetivo
gotify_server_url
Gotify App TokenVariable

[Gotify] Application token for Gotify.

Objetivo
gotify_app_token
Gotify HTTPSVariable

[Gotify] Use HTTPS for Gotify server URL. Default: false (HTTP)

Objetivo
gotify_https
Por defecto
false
Gotify PriorityVariable

[Gotify] Message priority (0-10). Default: 0

Objetivo
gotify_priority
Por defecto
0
Signal HostVariable

[Signal] Hostname of the bbernhard/signal-cli-rest-api container.

Objetivo
signal_host
Signal PortVariable

[Signal] Port the signal-cli-rest-api container listens on.

Objetivo
signal_port
Signal NumberVariable

[Signal] Phone number of the Signal device to send from.

Objetivo
signal_number
Signal RecipientVariable

[Signal] Recipient phone number for Signal messages.

Objetivo
signal_recipient
Bark URLVariable

[Bark] Full Bark push URL. For the official server use: api.day.app

Objetivo
bark_url
Pushover TokenVariable

[Pushover] Application API token.

Objetivo
pushover_token
Pushover User KeyVariable

[Pushover] Pushover user key.

Objetivo
pushover_user
Pushover PriorityVariable

[Pushover] Priority: -1, 0, 1, or 2. Default: 0

Objetivo
pushover_priority
Por defecto
0
Pushover RetryVariable

[Pushover] Retry interval in seconds (priority 2 only). Default: 60

Objetivo
pushover_retry
Por defecto
60
Pushover ExpireVariable

[Pushover] Notification expiration in seconds (priority 2 only). Default: 3600

Objetivo
pushover_expire
Por defecto
3600
Pushover SoundVariable

[Pushover] Custom notification sound. See https://pushover.net/api#sounds for values.

Objetivo
pushover_sound
Healthchecks URLVariable

[Healthchecks] Full ping URL for Healthchecks.io.

Objetivo
healthchecks_url
Webhook ServerVariable

[Webhook/openhab] Hostname of the webhook server.

Objetivo
webhook_server
Webhook PortVariable

[Webhook/openhab] Port for the webhook server. Default: 8123

Objetivo
webhook_port
Por defecto
8123
Webhook PathVariable

[Webhook/openhab] Path on the webhook server. Must start and end with /. Default: /api/webhook/

Objetivo
webhook_path
Por defecto
/api/webhook/
Webhook IDVariable

[Webhook/openhab] Webhook ID. For openhab use 'state'.

Objetivo
webhook_id
Webhook HTTPSVariable

[Webhook/openhab] Use HTTPS. Default: false (HTTP)

Objetivo
webhook_https
Por defecto
false
Webhook BodyVariable

[Webhook] Body key for the webhook request. HA=data, Discord=content, IFTTT=value1. Default: data

Objetivo
webhook_body
Por defecto
data
Webhook InsecureVariable

[Webhook] Allow insecure HTTPS certificates (e.g. self-signed). Default: false

Objetivo
webhook_insecure
Por defecto
false
Telegram TokenVariable

[Telegram] Bot token from BotFather.

Objetivo
telegram_token
Telegram Chat IDVariable

[Telegram] Chat ID for the bot. Prefix with - for group chats.

Objetivo
telegram_chat_id
Telegram PollingVariable

[Telegram] Enable polling to allow remote sync/auth via chat messages. Default: false

Objetivo
telegram_polling
Por defecto
false
Telegram Silent NotificationsVariable

[Telegram] Send file download notifications silently. Default: false

Objetivo
telegram_silent_file_notifications
Por defecto
false
Telegram ServerVariable

[Telegram] Proxy server FQDN if Telegram is blocked in your country.

Objetivo
telegram_server
Telegram HTTPVariable

[Telegram] Use HTTP instead of HTTPS if Telegram is restricted to HTTP only. Default: false

Objetivo
telegram_http
Por defecto
false
Prowl API KeyVariable

[Prowl] API key from the Prowl website.

Objetivo
prowl_api_key
DingTalk TokenVariable

[DingTalk] Access token from DingTalk app Security Settings.

Objetivo
dingtalk_token
Discord IDVariable

[Discord] First part of the Discord webhook URL (numbers only).

Objetivo
discord_id
Discord TokenVariable

[Discord] Second part of the Discord webhook URL.

Objetivo
discord_token
IYUU TokenVariable

[IYUU] Access token for IYUU notifications.

Objetivo
iyuu_token
Initialise KeyringVariable

Run password/keyring setup and create MFA cookie on next start.

Objetivo
initialise
Por defecto
false
Convert All HEICsVariable

Convert HEICs that do not have a corresponding JPEG.

Objetivo
convert_all_heics
Por defecto
false
Force Convert All HEICsVariable

Convert all HEICs regardless of existing JPEG presence. 2-minute delay before running.

Objetivo
force_convert_all_heics
Por defecto
false
Force Convert All HEICs in /mntVariable

Convert all HEICs in /mnt path. 2-minute delay before running.

Objetivo
force_convert_all_mnt_heics
Por defecto
false
Remove All JPGsVariable

Remove all JPEGs that have a matching HEIC source file.

Objetivo
remove_all_jpgs
Por defecto
false
Correct JPEG Time StampsVariable

Correct JPEG timestamps to match their accompanying HEIC files.

Objetivo
correct_jpeg_time_stamps
Por defecto
false
Remove KeyringVariable

Delete stored password and keyring data. Use when changing Apple ID password.

Objetivo
remove_keyring
Por defecto
false
Enable DebuggingVariable

Enable verbose debug output.

Objetivo
enable_debugging
Por defecto
false
Disable DebuggingVariable

Disable debug logging.

Objetivo
disable_debugging
Por defecto
false
Upload Library to NextcloudVariable

Force upload entire local library to Nextcloud.

Objetivo
upload_library_to_nextcloud
Por defecto
false
Sideways Copy All VideosVariable

Copy or move all videos in download path to video_path.

Objetivo
sideways_copy_all_videos
Por defecto
false
List AlbumsVariable

List all albums available in the iCloud account.

Objetivo
list_albums
Por defecto
false
List LibrariesVariable

List all shared libraries available in the iCloud account.

Objetivo
list_libraries
Por defecto
false
UserVariable

Container user name (e.g. 'nobody'). Also used as the Telegram remote-sync trigger word.

Objetivo
user
Por defecto
user
User ID (PUID)Variable

User ID to match permissions on host.

Objetivo
user_id
Por defecto
1000
GroupVariable

Group name for file permissions.

Objetivo
group
Por defecto
group
Group ID (PGID)Variable

Group ID to match host group.

Objetivo
group_id
Por defecto
1000
Force GIDVariable

Allow creation of a group with a pre-existing group ID. Use with caution.

Objetivo
force_gid
Directory PermissionsVariable

Permissions to set on directories in the download destination. Default: 750

Objetivo
directory_permissions
Por defecto
750
File PermissionsVariable

Permissions to set on downloaded files. Default: 640

Objetivo
file_permissions
Por defecto
640

Descargar estadísticas

3,364,960
Descargas totales
111,932
Este mes
78,829
Media / Mes

Descargas totales a lo largo del tiempo

Cargando gráfico...

Detalles

Repositorio
boredazfcuk/icloudpd
Última actualización2026-05-04
Visto por primera vez2020-05-14

Ejecute Icloudpd en Unraid.

Icloudpd se encuentra en Community Apps para Unraid OS. Explore Unraid para crear un servidor doméstico flexible, un NAS o un laboratorio doméstico.