Skip to content
logo9minuti120x48
Menu
  • Home
  • Tutorial
    • Zaini
    • Stampa 3d
    • ebook
    • Informatica
  • Scritti
    • Racconti
    • Articoli
    • Temi
    • Storia
  • Video
  • Progetti
    • Progetto Carcere
    • Progetto Istruzione
    • Progetto Acque pulite
    • Progetto Tecnologia
    • Progetto Casa
    • Progetto Democrazia
    • Progetto Immigrazione
    • Storia
    • Progetto Storia
  • Chi siamo
    • LinkTree
  • Privacy Policy
    • Cookie Policy (EU)
  • Blog
  • Donazioni
Menu
docker DDNS updater cover 1024

DDNS-updater with Docker and Raspberry (No-IP)

Posted on 14 Giugno 2020 by Alessandro Oppo

Do you have a dynamic public IP address and you’d like to host a website at your house?

If you are using a Linux server or a Raspberry Pi this is the right tutorial for you.

I suppose that you already know No-ip and that you are tired of the No-IP DUC and that you want to install it on docker.

If you don’t know what is No-ip I’ll tell you quickly. It’s a service that allows you to simulate a static IP address for free.

To keep updated the public IP you have to install a software called No-IP DUC on your server.

I recently discovered that there is also a docker image that does it, and not just for No-IP but also for other services (Cloudflare, DDNSS.de, DNSPod, Dreamhost, DuckDNS, GoDaddy, Google, Infomaniak, Namecheap and NoIP).

It’s made by Quentin McGaw and this is the official GitHub page of the project.

This tutorial is partially copied from the original one on docker.com. Since some stuff was not totally clear to me I decided to write it with all commands, so someone else could benefit from my experience.

Execute all these commands (each one singularly, the # means that is a comment, so you don’t have to execute it)

cd
mkdir data
touch data/config.json
# Owned by user ID of Docker container (1000)
chown -R 1000 data
# all access (for creating json database file data/updates.json)
chmod 700 data
# read access only
chmod 400 data/config.json

Now we need to modify the config.json file. I’m using the nano text editor.

sudo nano data/config.json

Copy and paste this JSON file into the editor. Modify your data, then press  CTRL+X and save the file.

{
     "settings": [
         {
             "provider": "noip",
             "domain": "HOST.ddns.net",
             "host": "@",
             "username": "MAIL",
             "password": "PASSWORD"
         }
     ]
 }

Now execute  cd so you are in the main directory. This step is very important.

Finally, we can install the ddns-updater.

sudo  docker run -d -p 8000:8000/tcp -v "$(pwd)"/data:/updater/data qmcgaw/ddns-updater

Now your docker container should run and you can check the web interface going on http://yourServerIP:8000

If you see this image it means that everything is working fine.

noip docker web interface
noip docker web interface

If you want to use another port because you already used the 8000, you can change it using PORT:8000.

Let’s say I want the 8040 I have to execute

sudo docker run -d -p 8040:8000/tcp -v "$(pwd)"/data:/updater/data qmcgaw/ddns-updater

If you want that the container auto starts when you turn on the server, remember to go on Portainer and change the Restart Policies to Always.

I hope everything is clear, please leave a message if you have a problem or if the tutorial was helpful.

 

 

Dammi un 5 virtuale, clicca like e condividi.

  • Fai clic qui per condividere su LinkedIn (Si apre in una nuova finestra) LinkedIn
  • Fai clic per condividere su Facebook (Si apre in una nuova finestra) Facebook
  • Fai clic per condividere su X (Si apre in una nuova finestra) X
  • Fai clic qui per condividere su Reddit (Si apre in una nuova finestra) Reddit
  • Fai clic per condividere su WhatsApp (Si apre in una nuova finestra) WhatsApp
  • Fai clic per condividere su Telegram (Si apre in una nuova finestra) Telegram
  • Fai clic per inviare un link a un amico via e-mail (Si apre in una nuova finestra) E-mail

Related

Cosa ne pensi? Fammelo sapere con un messaggioAnnulla risposta

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.

Scoprici sui social

  • YouTube
  • Telegram
  • Facebook
  • RSS Feed

    Ultimi post

    • Dave dei Vallanzaska: AI, Milano e venti di guerra – Riflessioni su 30 anni di cambiamenti
    • Libri e Social: Intervista a Sam di Rivista Matrioska | Come Creare un Progetto Culturale Online
    • Solo l’occidente conosce la Storia? Dialogo col Professor Adolfo Scotto Di Luzio
    • Ponti sospesi: cosa abbiamo sbagliato? cosa si potrebbe fare?
    • Siamo quel che facciamo? – racconto breve
    • Il limite è sempre la mente – Racconto breve
    • L’ultimo giorno del carcere – Racconto breve

    Newsletter

    • YouTube
    • Facebook
    • Telegram
    • Dave dei Vallanzaska: AI, Milano e venti di guerra – Riflessioni su 30 anni di cambiamenti
      di Alessandro Oppo
    • Libri e Social: Intervista a Sam di Rivista Matrioska | Come Creare un Progetto Culturale Online
      di Alessandro Oppo
    • Solo l’occidente conosce la Storia? Dialogo col Professor Adolfo Scotto Di Luzio
      di Alessandro Oppo
    • Ponti sospesi: cosa abbiamo sbagliato? cosa si potrebbe fare?
      di Alessandro Oppo
    • Siamo quel che facciamo? – racconto breve
      di Alessandro Oppo

    ©2025 9minuti | Design: Newspaperly WordPress Theme
    Manage Cookie Consent
    Usiamo cookie per ottimizzare il nostro sito web ed i nostri servizi.
    Cookie funzionali Sempre attivo
    The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
    Preferences
    The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
    Statistics
    The technical storage or access that is used exclusively for statistical purposes. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
    Marketing
    The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.
    Gestisci opzioni Gestisci servizi Gestisci {vendor_count} fornitori Per saperne di più su questi scopi
    Visualizza preference
    {title} {title} {title}
     

    Caricamento commenti...