All apps · 0 apps
icloudpd
Docker app from Womabre's Repository
Overview
Readme
View on GitHubunRAID Docker Templates
Templates for Docker Containers for use on unRAID Server
iCloud Photos Downloader
An Alpine Linux Docker container for ndbroadbent's iCloud Photos Downloader writen by boredazfcuk
Docker Hub: https://hub.docker.com/r/boredazfcuk/icloudpd A command-line tool to download photos from iCloud: https://github.com/ndbroadbent/icloud_photos_downloader
Install Icloudpd on Unraid in a few clicks.
Find Icloudpd in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.
Categories
Download Statistics
Total Downloads Over Time
Related apps
Explore more like this
Explore allLinks
Details
boredazfcuk/icloudpdRuntime arguments
- Network
bridge- Shell
sh- Privileged
- false
Template configuration
Apple ID used to access iCloud.
- Target
- apple_id
- Default
- your@appleid.com
Sets container timezone. Example: Europe/Amsterdam
- Target
- TZ
- Default
- UTC
Stores configuration, cookies, and keyring.
- Target
- /config
- Default
- /mnt/user/appdata/icloudpd
Where downloaded photos and videos will be stored. A .mounted file must exist inside this folder before syncing will start.
- Target
- /home/user/iCloud
- Default
- /mnt/user/iCloud
Internal destination used by icloudpd. This must match the container side of the Download Path mapping. Required so first-run configuration does not leave download_path blank.
- Target
- download_path
- Default
- /home/user/iCloud
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.
- Target
- download_interval
- Default
- 86400
Delay first download in minutes (0-60). Use to stagger multiple containers.
- Target
- download_delay
- Default
- 0
Folder structure for downloaded files. Use 'none' for a flat structure. Default: {:%Y/%m/%d}
- Target
- folder_structure
- Default
- {:%Y/%m/%d}
Organize albums into subfolders by date (uses folder_structure). Default: false
- Target
- albums_with_dates
- Default
- false
Organize libraries into subfolders by date (uses folder_structure). Default: false
- Target
- libraries_with_dates
- Default
- false
Type of authentication on your iCloud account. Use 'MFA' or 'Web' (if no MFA). Default: MFA
- Target
- authentication_type
- Default
- MFA
Notify n days before MFA cookie expires. A single notification is sent per day. Default: 7
- Target
- notification_days
- Default
- 7
Set to true to exit after a single sync instead of looping. If used, set container restart policy to 'no'.
- Target
- single_pass
- Default
- false
Skip the check for new files. Recommended for libraries with more than a few thousand photos. Default: false
- Target
- skip_check
- Default
- false
Size to download: original, medium, thumb, adjusted, alternative. Can be comma-separated for multiple sizes. Default: original
- Target
- photo_size
- Default
- original
Skip downloading Live Photos. Default: false
- Target
- skip_live_photos
- Default
- false
Live photo size: original, medium, or thumb. Ignored if skip_live_photos is true. Default: original
- Target
- live_photo_size
- Default
- original
Skip downloading videos. Default: false
- Target
- skip_videos
- Default
- false
Only download this number of recently added photos. Leave empty to download all.
- Target
- recent_only
Download recent photos until n previously downloaded consecutive photos are found. Leave empty to download all.
- Target
- until_found
Download only from specific album(s). Comma-separated. Use 'all albums' to download all albums.
- Target
- photo_album
Skip specific albums when using photo_album. Example: All Photos,Videos,Screenshots
- Target
- skip_album
Download only from specific shared library/libraries. Comma-separated. Use 'all libraries' to download all.
- Target
- photo_library
Skip specific libraries when using photo_library. Example: PrimarySync
- Target
- skip_library
For assets with RAW and JPEG, treat RAW in specified size: original, alternative, or as-is. Default: as-is
- Target
- align_raw
- Default
- as-is
Policy to identify and de-duplicate files. Options: name-size-dedup-with-suffix, name-id7. Default: name-size-dedup-with-suffix
- Target
- file_match_policy
- Default
- name-size-dedup-with-suffix
Convert downloaded HEIC files to JPEG, retaining the original. Default: false
- Target
- convert_heic_to_jpeg
- Default
- false
JPEG conversion quality (0-100). Default: 90
- Target
- jpeg_quality
- Default
- 90
Custom path for converted JPEGs. Defaults to download path if not set.
- Target
- jpeg_path
Scan 'Recently Deleted' folder and delete those files locally. Default: false
- Target
- auto_delete
- Default
- false
Move file to Recently Deleted after download. Cannot be combined with auto_delete. Default: false
- Target
- delete_after_download
- Default
- false
Delete generated JPG and MOV files that accompany HEICs (live photo MOVs, converted JPEGs). Default: false
- Target
- delete_accompanying
- Default
- false
Delete empty directories after sync. Only runs if folder_structure is not 'none'. Default: false
- Target
- delete_empty_directories
- Default
- false
Write DateTimeOriginal EXIF tag from file creation date. Warning: alters local file and causes re-download with dedup suffix. Default: false
- Target
- set_exif_datetime
- Default
- false
Keep unicode characters in file names. Set to false to strip non-ASCII chars. Default: false
- Target
- keep_unicode
- Default
- false
Filename policy for Live Photo MOV files: suffix (adds _HEVC) or original (same name as photo). Default: suffix
- Target
- live_photo_mov_filename_policy
- Default
- suffix
Copy or move downloaded videos to a separate directory (video_path). Default: false
- Target
- sideways_copy_videos
- Default
- false
How to handle sideways video copy: 'copy' (leave original) or 'move' (requires delete_after_download=true). Default: copy
- Target
- sideways_copy_videos_mode
- Default
- copy
Destination directory for sideways video copy/move. Required when sideways_copy_videos is true.
- Target
- video_path
Enable upload to Nextcloud after download. Default: false
- Target
- nextcloud_upload
- Default
- false
Nextcloud server URL. Example: https://my.server.local/nextcloud/
- Target
- nextcloud_url
Username of the Nextcloud account to upload to.
- Target
- nextcloud_username
Password for the Nextcloud account.
- Target
- nextcloud_password
Root folder in Nextcloud to place files in. Cannot be the root of the server.
- Target
- nextcloud_target_dir
Delete file from Nextcloud when removed locally. Requires auto_delete=true. Default: false
- Target
- nextcloud_delete
- Default
- false
Notification provider to use. Options: Prowl, Pushover, Telegram, Webhook, openhab, Dingtalk, Discord, IYUU, WeCom, Gotify, Bark, msmtp, signal. Leave empty to disable.
- Target
- notification_type
Title used in notifications. Default: boredazfcuk/iCloudPD
- Target
- notification_title
- Default
- boredazfcuk/iCloudPD
Send notifications with a summary after file downloads. Default: true
- Target
- download_notifications
- Default
- true
Send notifications with a summary after file deletions. Default: true
- Target
- delete_notifications
- Default
- true
Send a notification when the container starts. Default: true
- Target
- startup_notification
- Default
- true
Send low-priority (silent) notifications for file downloads and deletions. Default: false
- Target
- silent_file_notifications
- Default
- false
[msmtp] SMTP server hostname.
- Target
- msmtp_host
[msmtp] SMTP server port. Normally 465 or 587. Default: 587
- Target
- msmtp_port
- Default
- 587
[msmtp] SMTP login username.
- Target
- msmtp_user
[msmtp] SMTP login password.
- Target
- msmtp_pass
[msmtp] Sender email address.
- Target
- msmtp_from
[msmtp] Enable TLS encryption: on or off. Default: on
- Target
- msmtp_tls
- Default
- on
[msmtp] Enable SMTP authentication: on or off. Default: on
- Target
- msmtp_auth
- Default
- on
[msmtp] Optional extra arguments for msmtp. Example: --tls-starttls=off
- Target
- msmtp_args
[Gotify] Server hostname. Example: server.domain.tld (no port, no protocol). Use gotify_https to toggle HTTPS.
- Target
- gotify_server_url
[Gotify] Application token for Gotify.
- Target
- gotify_app_token
[Gotify] Use HTTPS for Gotify server URL. Default: false (HTTP)
- Target
- gotify_https
- Default
- false
[Gotify] Message priority (0-10). Default: 0
- Target
- gotify_priority
- Default
- 0
[Signal] Hostname of the bbernhard/signal-cli-rest-api container.
- Target
- signal_host
[Signal] Port the signal-cli-rest-api container listens on.
- Target
- signal_port
[Signal] Phone number of the Signal device to send from.
- Target
- signal_number
[Signal] Recipient phone number for Signal messages.
- Target
- signal_recipient
[Bark] Full Bark push URL. For the official server use: api.day.app
- Target
- bark_url
[Pushover] Application API token.
- Target
- pushover_token
[Pushover] Pushover user key.
- Target
- pushover_user
[Pushover] Priority: -1, 0, 1, or 2. Default: 0
- Target
- pushover_priority
- Default
- 0
[Pushover] Retry interval in seconds (priority 2 only). Default: 60
- Target
- pushover_retry
- Default
- 60
[Pushover] Notification expiration in seconds (priority 2 only). Default: 3600
- Target
- pushover_expire
- Default
- 3600
[Pushover] Custom notification sound. See https://pushover.net/api#sounds for values.
- Target
- pushover_sound
[Healthchecks] Full ping URL for Healthchecks.io.
- Target
- healthchecks_url
[Webhook/openhab] Hostname of the webhook server.
- Target
- webhook_server
[Webhook/openhab] Port for the webhook server. Default: 8123
- Target
- webhook_port
- Default
- 8123
[Webhook/openhab] Path on the webhook server. Must start and end with /. Default: /api/webhook/
- Target
- webhook_path
- Default
- /api/webhook/
[Webhook/openhab] Webhook ID. For openhab use 'state'.
- Target
- webhook_id
[Webhook/openhab] Use HTTPS. Default: false (HTTP)
- Target
- webhook_https
- Default
- false
[Webhook] Body key for the webhook request. HA=data, Discord=content, IFTTT=value1. Default: data
- Target
- webhook_body
- Default
- data
[Webhook] Allow insecure HTTPS certificates (e.g. self-signed). Default: false
- Target
- webhook_insecure
- Default
- false
[Telegram] Bot token from BotFather.
- Target
- telegram_token
[Telegram] Chat ID for the bot. Prefix with - for group chats.
- Target
- telegram_chat_id
[Telegram] Enable polling to allow remote sync/auth via chat messages. Default: false
- Target
- telegram_polling
- Default
- false
[Telegram] Send file download notifications silently. Default: false
- Target
- telegram_silent_file_notifications
- Default
- false
[Telegram] Proxy server FQDN if Telegram is blocked in your country.
- Target
- telegram_server
[Telegram] Use HTTP instead of HTTPS if Telegram is restricted to HTTP only. Default: false
- Target
- telegram_http
- Default
- false
[Prowl] API key from the Prowl website.
- Target
- prowl_api_key
[DingTalk] Access token from DingTalk app Security Settings.
- Target
- dingtalk_token
[Discord] First part of the Discord webhook URL (numbers only).
- Target
- discord_id
[Discord] Second part of the Discord webhook URL.
- Target
- discord_token
[IYUU] Access token for IYUU notifications.
- Target
- iyuu_token
Run password/keyring setup and create MFA cookie on next start.
- Target
- initialise
- Default
- false
Convert HEICs that do not have a corresponding JPEG.
- Target
- convert_all_heics
- Default
- false
Convert all HEICs regardless of existing JPEG presence. 2-minute delay before running.
- Target
- force_convert_all_heics
- Default
- false
Convert all HEICs in /mnt path. 2-minute delay before running.
- Target
- force_convert_all_mnt_heics
- Default
- false
Remove all JPEGs that have a matching HEIC source file.
- Target
- remove_all_jpgs
- Default
- false
Correct JPEG timestamps to match their accompanying HEIC files.
- Target
- correct_jpeg_time_stamps
- Default
- false
Delete stored password and keyring data. Use when changing Apple ID password.
- Target
- remove_keyring
- Default
- false
Enable verbose debug output.
- Target
- enable_debugging
- Default
- false
Disable debug logging.
- Target
- disable_debugging
- Default
- false
Force upload entire local library to Nextcloud.
- Target
- upload_library_to_nextcloud
- Default
- false
Copy or move all videos in download path to video_path.
- Target
- sideways_copy_all_videos
- Default
- false
List all albums available in the iCloud account.
- Target
- list_albums
- Default
- false
List all shared libraries available in the iCloud account.
- Target
- list_libraries
- Default
- false
Container user name (e.g. 'nobody'). Also used as the Telegram remote-sync trigger word.
- Target
- user
- Default
- user
User ID to match permissions on host.
- Target
- user_id
- Default
- 1000
Group name for file permissions.
- Target
- group
- Default
- group
Group ID to match host group.
- Target
- group_id
- Default
- 1000
Allow creation of a group with a pre-existing group ID. Use with caution.
- Target
- force_gid
Permissions to set on directories in the download destination. Default: 750
- Target
- directory_permissions
- Default
- 750
Permissions to set on downloaded files. Default: 640
- Target
- file_permissions
- Default
- 640