FAILED: updating cloud.haddock.cc: No DNS record ID found

I’m having some trouble setting up dynamic DNS with Cloudflare. I have everything setup, but I keep getting this error when I do sudo docker-compose up:

ddclient       | FAILED:   updating cloud.haddock.cc: No DNS record ID found.

(cloud.haddock.cc is what I’m trying to redirect to my Nextcloud instance)

Here’s my nextcloud.subdomain.conf:

server {
    listen 443 ssl;
    listen [::]:443 ssl;
 
    server_name cloud.*;
 
    include /config/nginx/ssl.conf;
 
    client_max_body_size 0;
 
    location / {
        include /config/nginx/proxy.conf;
        resolver 127.0.0.11 valid=30s;
        set $upstream_cloud cloud;
        proxy_max_temp_file_size 2048m;
        proxy_pass https://$upstream_cloud:443;
    }
}

Here’s my Nextcloud config.php:

<?php
$CONFIG = array (
  'memcache.local' => '\OC\Memcache\APCu',
  'datadirectory' => '/data',
  'trusted_proxies' => ['letsencrypt'],
  'overwrite.cli.url' => 'https://cloud.haddock.cc/',
  'overwritehost' => 'cloud.haddock.cc',
  'overwriteprotocol' => 'https',
  );
'trusted_domains' =>
  array (
    0 => '192.168.0.28:80',
    1 => 'cloud.haddock.cc',
  ),

I have the Cloudflare section in ddclient.conf set to:

##
## CloudFlare (www.cloudflare.com)
##
protocol=cloudflare,        \
zone=haddock.cc,            \
ttl=1,                      \
login=MyEmail,     \
password=GlobalAPIKey \
cloud.haddock.cc

I’m also getting this error further up in the log, but I don’t have that directory mounted as a volume, so I don’t know what it’s talking about:

ddclient       | WARNING:  file /var/cache/ddclient/ddclient.cache, line 3: Invalid Value for keyword 'ip' = ''

You need use=web in your config

I forgot to mention that I have that further up in ddclient.conf:

use=web, web=checkip.dyndns.org/, web-skip='IP Address'

So for future reference. I was trying to update cloud.mydomain.com, by putting it at the bottom of this particular part of ddclient.conf, even though I didn’t have an A record for that particular subdomain:

##
## CloudFlare (www.cloudflare.com)
##
protocol=cloudflare,        \
zone=mydomain.com,            \
ttl=1,                      \
login=MyEmail,     \
password=GlobalAPIKey \
cloud.mydomain.com

I had an A record for mydomain.com setup in Cloudflare pointing to 0.0.0.0 (doesn’t matter what it’s set to originally, because ddclient will update it), but none for cloud.mydomain.com. So what I’m trying to get to here is that I needed to take the cloud part out of the bottom line so it would just update mydomain.com. I hope that makes sense.