boredazfcuk / docker-icloudpd

An Alpine Linux container for the iCloud Photos Downloader command line utility
1.58k stars 149 forks source link

Startup does not progress past "Sending Pushover startup notification" #459

Closed thew1se closed 1 month ago

thew1se commented 6 months ago

I was going to re-initialize because my token was expired.
Updated container to newest version. Ran sync-icloud.sh --Initialise and then it went through normal startup sequence but froze at "Sending Pushover startup notification"

This has never happened previously...usually it continues to the authentication portion.

Running Docker on Synology.

Can you advise how to fix?

LOG 2023-12-22 10:58:48 INFO boredazfcuk/icloudpd container for icloud_photo_downloader v1.0.689 started 2023-12-22 10:58:48 INFO For support, please go here: https://github.com/boredazfcuk/docker-icloudpd 2023-12-22 10:58:48 INFO Alpine Linux 3.19.0 2023-12-22 10:58:48 INFO Python version: 3.11.6 2023-12-22 10:58:48 INFO Loading configuration from: /config/icloudpd.conf 2023-12-22 10:58:49 INFO Apple ID: Blocked-out 2023-12-22 10:58:49 INFO Authentication Type: MFA 2023-12-22 10:58:49 INFO Cookie path: /config/ Blocked-out 2023-12-22 10:58:49 INFO Cookie expiry notification period: 7 2023-12-22 10:58:49 INFO Download destination directory: /iCloudPD 2023-12-22 10:58:49 INFO Folder structure: album 2023-12-22 10:58:49 INFO Synchronisation interval: 86400 2023-12-22 10:58:49 INFO Synchronisation delay (minutes): 0 2023-12-22 10:58:49 INFO Set EXIF date/time: false 2023-12-22 10:58:49 INFO Auto delete: false 2023-12-22 10:58:49 INFO Delete after download: false 2023-12-22 10:58:49 INFO Photo size: original 2023-12-22 10:58:49 INFO Single pass mode: false 2023-12-22 10:58:49 INFO Skip download check: true 2023-12-22 10:58:49 INFO Skip live photos: false 2023-12-22 10:58:49 INFO Number of most recently added photos to download: Download All Photos 2023-12-22 10:58:49 INFO Downloading photos from: Download All Photos 2023-12-22 10:58:49 INFO Stop downloading when prexisiting files count is: Download All Photos 2023-12-22 10:58:49 INFO Live photo size: original 2023-12-22 10:58:49 INFO Skip videos: false 2023-12-22 10:58:49 INFO Convert HEIC to JPEG: false 2023-12-22 10:58:49 INFO Pushover notifications enabled 2023-12-22 10:58:49 INFO Pushover user: Blocked-out 2023-12-22 10:58:49 INFO Pushover token: Blocked-out 2023-12-22 10:58:49 INFO Sending Pushover startup notification

w1zz4 commented 6 months ago

It’s weird, no issue with latest image and I am using pushover… maybe try to use previous image 1.0.688

fhandschuch commented 6 months ago

I have a similiar issue, never getting past the "Check Telegram bot initialised..." line in my case.

I also tried going back to image 1.0.688 and temporarily deleted all files in my "/config" path (backed them up of course ...)

2023-12-31 17:25:00 INFO     ***** boredazfcuk/icloudpd container for icloud_photo_downloader v1.0.688 started *****
2023-12-31 17:25:00 INFO     ***** For support, please go here: https://github.com/boredazfcuk/docker-icloudpd *****
2023-12-31 17:25:00 INFO     Alpine Linux 3.19.0
2023-12-31 17:25:00 INFO     Python version: 3.11.6
2023-12-31 17:25:01 INFO     Loading configuration from: /config/icloudpd.conf
2023-12-31 17:25:08 INFO     Apple ID: ***
2023-12-31 17:25:08 INFO     Authentication Type: MFA
2023-12-31 17:25:08 INFO     Cookie path: /config/***
2023-12-31 17:25:08 INFO     Cookie expiry notification period: 10
2023-12-31 17:25:08 INFO     Download destination directory: /home/USER/iCloud
2023-12-31 17:25:08 INFO     Folder structure: {:%Y/%m}
2023-12-31 17:25:08 INFO     Synchronisation interval: 21600
2023-12-31 17:25:08 WARNING  Setting synchronisation_interval to less than 43200 (12 hours) may cause throttling by Apple.
2023-12-31 17:25:08 WARNING  If you run into the following error:
2023-12-31 17:25:08 WARNING   - private db access disabled for this account. Please wait a few hours then try again. The remote servers might be trying to throttle requests. (ACCESS_DENIED)
2023-12-31 17:25:08 WARNING  Then check your synchronisation_interval is 43200 or greater and switch the container off for 6-12 hours so Apple's throttling expires. Continuing in 2 minutes
2023-12-31 17:27:08 INFO     Synchronisation delay (minutes): 0
2023-12-31 17:27:08 INFO     Set EXIF date/time: true
2023-12-31 17:27:08 WARNING  This setting changes the files that are downloaded, so they will be downloaded a second time. Enabling this setting results in a lot of duplicate
2023-12-31 17:27:08 INFO     Auto delete: false
2023-12-31 17:27:08 INFO     Delete after download: false
2023-12-31 17:27:08 INFO     Photo size: original
2023-12-31 17:27:08 INFO     Single pass mode: false
2023-12-31 17:27:08 INFO     Skip download check: false
2023-12-31 17:27:08 INFO     Skip live photos: false
2023-12-31 17:27:08 INFO     Number of most recently added photos to download: Download All Photos
2023-12-31 17:27:08 INFO     Downloading photos from: Download All Photos
2023-12-31 17:27:08 INFO     Stop downloading when prexisiting files count is: Download All Photos
2023-12-31 17:27:08 INFO     Live photo size: original
2023-12-31 17:27:08 INFO     Skip videos: false
2023-12-31 17:27:08 INFO     Convert HEIC to JPEG: false
2023-12-31 17:27:08 INFO     Telegram notifications enabled
2023-12-31 17:27:08 INFO     Telegram token: ***
2023-12-31 17:27:08 INFO     Telegram chat id: ***
2023-12-31 17:27:08 INFO     Telegram polling: true
2023-12-31 17:27:08 INFO     Telegram notification URL: https://api.telegram.org/bot***/sendMessage
2023-12-31 17:27:08 INFO     Check Telegram bot initialised...

Initialising the container comes exactly as far as that as well.

thew1se commented 6 months ago

To temporarily get around this issue, I have disabled Pushover notifications. To do this I removed the pushover environment variables, backed up the config file, and deleted it from the config folder. Then reset the container and started. Worked as expected.

Appears something has changed with the notifications causing it to hang.....

boredazfcuk commented 6 months ago

It seems these issues are due to DNS problems. Latest container will test for this condition and generate an appropriate error message.

I think the issue is that the latest version of curl included in Alpine Linux 3.19 performs it's DNS requests using TCP where UDP was used in previous versions. This will require a firewall change to allow this type of traffic.

soelu commented 5 months ago

Same issue while starting up when using discord notification. Start works after disabling discord notifications

boredazfcuk commented 2 months ago

I think this issue may be related to the networking/firewall/DNS configuration of the host device.

It was getting stuck because curl could not resolve the IP address of the notification provider unless it had TCP connectivity to the DNS server. I did put a check in place to test for this, but then that broke notifications because some users didn't need TCP connectivity and it worked just fine using the default UDP connectivity.

My guess is that you're all using Synology devices and there is something on that system which is preventing the curl command from obtaining the IP address of the notification service's server.

boredazfcuk commented 1 month ago

Closing as stale