Help: Synology Cannot #255

Closed
opened 2025-11-20 04:22:04 -05:00 by saavagebueno · 2 comments
Owner

Originally created by @flyegg on GitHub (Feb 7, 2023).

TLDR: I tried to use the docker suite built in Synology DSM to run the ddns-updater. Because the DSM is highly customized linux, I am not sure I put the config.json in the right place. I first made the dir and the config.json file inside the docker foder following the setup guide so It looks like /docker/data/config.jason. Then I started the container by using defaut settings. Although it seems that the ddns-updater is up and can read the config.json file but actually it is not working properly. The web page at 8000 port shows a table like page head and nothing else. Thanks a lot!

  1. Is this urgent: No
  2. DNS provider(s) you use: No-ip
  3. Program version:
    Running version latest built on 2023-02-02T00:41:38Z (commit 228fc50) | stdout
  4. What are you using to run the container: docker-run
  5. Extra information (optional)

Logs:

Running version latest built on 2023-02-02T00:41:38Z (commit 228fc50)
🔧 Need help? https://github.com/qdm12/ddns-updater/discussions/new
🐛 Bug? https://github.com/qdm12/ddns-updater/issues/new
✨ New feature? https://github.com/qdm12/ddns-updater/issues/new
☕ Discussion? https://github.com/qdm12/ddns-updater/discussions/new
💻 Email? quentin.mcgaw@gmail.com
💰 Help me? https://www.paypal.me/qmcgaw https://github.com/sponsors/qdm12
2023-02-07T07:13:56Z INFO reading JSON config from file /updater/data/config.json
2023-02-07T07:13:56Z WARN Found no setting to update record
2023-02-07T07:13:56Z INFO [healthcheck server] listening on 127.0.0.1:9999
2023-02-07T07:13:56Z INFO [http server] listening on :8000
2023-02-07T07:13:56Z INFO [backup] disabled
2023/02/07 07:14:17 "GET http://192.168.31.12:8000/ HTTP/1.1" from 192.168.31.22:54851 - 200 1274B in 54.346µs
2023/02/07 07:17:39 "GET http://192.168.31.12:8000/ HTTP/1.1" from 192.168.31.22:54870 - 200 1274B in 40.117µs
2023/02/07 07:46:23 "GET http://192.168.31.12:8000/ HTTP/1.1" from 192.168.31.22:55352 - 200 1274B in 39.09µs

Configuration file (remove your credentials!):

{
  "settings": [
    {
      "provider": "noip",
      "domain": "ddns.net",
      "host": "abc",   //my subdomain was abc.ddns.net
      "username":"***"
      "password": "***",
      "ip_version": "ipv6",
      "provider_ip": true
    }
  ]
}

Host OS:
Synology DSM 7.1.1

Originally created by @flyegg on GitHub (Feb 7, 2023). **TLDR**: I tried to use the docker suite built in Synology DSM to run the ddns-updater. Because the DSM is highly customized linux, I am not sure I put the config.json in the right place. I first made the dir and the config.json file inside the docker foder following the setup guide so It looks like /docker/data/config.jason. Then I started the container by using defaut settings. Although it seems that the ddns-updater is up and can read the config.json file but actually it is not working properly. The web page at 8000 port shows a table like page head and nothing else. Thanks a lot! 1. Is this urgent: No 2. DNS provider(s) you use: No-ip 3. Program version: Running version latest built on 2023-02-02T00:41:38Z (commit 228fc50) | stdout 4. What are you using to run the container: docker-run 5. Extra information (optional) Logs: ``` Running version latest built on 2023-02-02T00:41:38Z (commit 228fc50) 🔧 Need help? https://github.com/qdm12/ddns-updater/discussions/new 🐛 Bug? https://github.com/qdm12/ddns-updater/issues/new ✨ New feature? https://github.com/qdm12/ddns-updater/issues/new ☕ Discussion? https://github.com/qdm12/ddns-updater/discussions/new 💻 Email? quentin.mcgaw@gmail.com 💰 Help me? https://www.paypal.me/qmcgaw https://github.com/sponsors/qdm12 2023-02-07T07:13:56Z INFO reading JSON config from file /updater/data/config.json 2023-02-07T07:13:56Z WARN Found no setting to update record 2023-02-07T07:13:56Z INFO [healthcheck server] listening on 127.0.0.1:9999 2023-02-07T07:13:56Z INFO [http server] listening on :8000 2023-02-07T07:13:56Z INFO [backup] disabled 2023/02/07 07:14:17 "GET http://192.168.31.12:8000/ HTTP/1.1" from 192.168.31.22:54851 - 200 1274B in 54.346µs 2023/02/07 07:17:39 "GET http://192.168.31.12:8000/ HTTP/1.1" from 192.168.31.22:54870 - 200 1274B in 40.117µs 2023/02/07 07:46:23 "GET http://192.168.31.12:8000/ HTTP/1.1" from 192.168.31.22:55352 - 200 1274B in 39.09µs ``` Configuration file (**remove your credentials!**): ```json { "settings": [ { "provider": "noip", "domain": "ddns.net", "host": "abc", //my subdomain was abc.ddns.net "username":"***" "password": "***", "ip_version": "ipv6", "provider_ip": true } ] } ``` Host OS: Synology DSM 7.1.1
Author
Owner

@jimpapi commented on GitHub (Mar 4, 2023):

ok it's easy:
1 your path is: /volume1/docker/data
2 in this data folder put (as you have already done) the config.json after editing with your ddns credentials
3 stop the container ddns-updater and add your path so it can read YOUR json and not the default
to do this right click the container>edit>advanced settings>environment>DATADIR = volume1/docker/data

Run the container again and now reads your config.json

The other way is to delete the container and buld it again by running the command line for this
1 ssh your synology with putty
2 connect by giving your synology ip and your synology credentials
3 go to the folder you have the file docker-compose.yaml (i put it in the some folder of the container)
to go the command line there write : cd /volume1/docker/data (put the docker-compose.yaml in the data folder)
4 build the container by writting: sudo docker-compose up -d

ofcourse before this you must delete the container if already in docker and edit the docker-compose.yaml file to have the right path for the config.json

i give you the example of mine docker-compose.yaml:

version: "3.7"
services:
  ddns-updater:
    image: qmcgaw/ddns-updater
    container_name: ddns-updater
    network_mode: "bridge"  
    volumes:
      - /volume1/docker/updater/data:/updater/data >>>>>>>>>>i changed that to my folder as you see
    environment:
      - CONFIG=
      - PERIOD=5m
      - UPDATE_COOLDOWN_PERIOD=5m
      - PUBLICIP_FETCHERS=all
      - PUBLICIP_HTTP_PROVIDERS=all
      - PUBLICIPV4_HTTP_PROVIDERS=all
      - PUBLICIPV6_HTTP_PROVIDERS=all
      - PUBLICIP_DNS_PROVIDERS=all
      - PUBLICIP_DNS_TIMEOUT=3s
      - HTTP_TIMEOUT=10s      
           # Web UI
      - LISTENING_PORT=8003 >>>>>>>>>>> i changed that because i had conflicts to the port 8000 with other container
      - ROOT_URL=/
      - HEALTH_SERVER_ADDRESS=127.0.0.1:9995 >>> i changed that because i had conflicts to the port 9999 with other cont
      # Backup
      - BACKUP_PERIOD=0 # 0 to disable
      - BACKUP_DIRECTORY=/updater/data
      # Other
      - LOG_LEVEL=info
      - LOG_CALLER=hidden
      - SHOUTRRR_ADDRESSES=
    restart: always
@jimpapi commented on GitHub (Mar 4, 2023): ok it's easy: 1 your path is: /volume1/docker/data 2 in this data folder put (as you have already done) the config.json after editing with your ddns credentials 3 stop the container ddns-updater and add your path so it can read YOUR json and not the default to do this right click the container>edit>advanced settings>environment>DATADIR = volume1/docker/data Run the container again and now reads your config.json The other way is to delete the container and buld it again by running the command line for this 1 ssh your synology with putty 2 connect by giving your synology ip and your synology credentials 3 go to the folder you have the file docker-compose.yaml (i put it in the some folder of the container) to go the command line there write : cd /volume1/docker/data (put the docker-compose.yaml in the data folder) 4 build the container by writting: sudo docker-compose up -d ofcourse before this you must delete the container if already in docker and edit the docker-compose.yaml file to have the right path for the config.json i give you the example of mine docker-compose.yaml: ```yml version: "3.7" services: ddns-updater: image: qmcgaw/ddns-updater container_name: ddns-updater network_mode: "bridge" volumes: - /volume1/docker/updater/data:/updater/data >>>>>>>>>>i changed that to my folder as you see environment: - CONFIG= - PERIOD=5m - UPDATE_COOLDOWN_PERIOD=5m - PUBLICIP_FETCHERS=all - PUBLICIP_HTTP_PROVIDERS=all - PUBLICIPV4_HTTP_PROVIDERS=all - PUBLICIPV6_HTTP_PROVIDERS=all - PUBLICIP_DNS_PROVIDERS=all - PUBLICIP_DNS_TIMEOUT=3s - HTTP_TIMEOUT=10s # Web UI - LISTENING_PORT=8003 >>>>>>>>>>> i changed that because i had conflicts to the port 8000 with other container - ROOT_URL=/ - HEALTH_SERVER_ADDRESS=127.0.0.1:9995 >>> i changed that because i had conflicts to the port 9999 with other cont # Backup - BACKUP_PERIOD=0 # 0 to disable - BACKUP_DIRECTORY=/updater/data # Other - LOG_LEVEL=info - LOG_CALLER=hidden - SHOUTRRR_ADDRESSES= restart: always ```
Author
Owner

@qdm12 commented on GitHub (Apr 13, 2023):

Thanks @jimpapi

I'll close the issue assuming it's fixed. Note you can also inline the json on a single line with the env variable CONFIG if you prefer.

@qdm12 commented on GitHub (Apr 13, 2023): Thanks @jimpapi I'll close the issue assuming it's fixed. Note you can also inline the json on a single line with the env variable `CONFIG` if you prefer.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/ddns-updater#255