Skip to content

Nightscout con Azure e MongoDB Atlas

Questa guida spiega come creare un nuovo sito Nightscout su Microsoft Azure con database MongoDB Atlas, oppure come migrare da Heroku.

Ispirata al tutorial originale di Scott Hanselman: https://www.youtube.com/watch?v=EDADrteGBnY

Usa un computer (non uno smartphone) durante tutta la procedura. Non cambiare browser o dispositivo. Se hai problemi con un browser, provane un altro.

Per maggiori informazioni su Nightscout: https://nightscout.github.io/

ℹ️ Nota: Azure richiede una carta di credito, ma il piano gratuito non comporta addebiti per Nightscout. MongoDB Atlas è gratuito per database di piccole dimensioni.


1. Crea il database Atlas

ℹ️ Nota: Se stai migrando da Heroku e hai già un database Atlas, vai direttamente alla sezione 5.

  1. Vai su https://www.mongodb.com/cloud/atlas e clicca Get started now.

  1. Inserisci email e una nuova password (da usare solo per Atlas) → Continue.
  2. Compila nome, cognome, seleziona Other e accetta i termini → Create Account.

  1. Controlla la mail e clicca Verify Email.

Si aprirà una pagina nel browser che conferma la verifica:

Premi Continue per procedere:

  1. Seleziona le opzioni richieste e clicca Finish.

  1. Seleziona Create a cluster in Shared Clusters (FREE).

⚠️ Attenzione: Se vedi una richiesta di dati di fatturazione, hai selezionato il tipo sbagliato di cluster. Torna indietro e scegli il cluster gratuito.

  1. Lascia tutti i valori predefiniti e clicca Create Cluster (ci vorrà qualche minuto).

  1. Aggiungi un utente database: scegli un nome utente (es. nightscout) e una password (solo lettere e numeri, no spazi o caratteri speciali). Annota nome utente e password. Clicca Create User.

  1. Seleziona My Local Environment e nel campo IP Address inserisci 0.0.0.0/0 (attenzione: sono zeri, non la lettera O).

  1. Clicca Add EntryFinish and CloseGo to Database.

Vedrai il messaggio di conferma delle regole di accesso appena create:

  1. Aspetta la creazione del cluster (può richiedere più di 3 minuti): finché è in corso, il pulsante di connessione resta disattivato.

Quando il cluster è pronto (pallino verde), clicca Connect:

Poi scegli Connect your application:

  1. Lascia il driver Node.js selezionato e clicca Copy per copiare la stringa di collegamento.

Incollala in un editor di testo (Blocco Note): la userai tra poco per costruire la tua MONGODB_URI.

Crea la stringa MONGODB_URI

La stringa ha questo formato:

mongodb+srv://nightscout:<password>@cluster0.xxxxx.mongodb.net/?retryWrites=true&w=majority

Sostituisci <password> con la password che hai scelto. Il risultato finale (senza < e >):

mongodb+srv://nightscout:mia_password@cluster0.xxxxx.mongodb.net/?retryWrites=true&w=majority

Conserva questa stringa: si chiama MONGODB_URI.


2. Crea l'App Web Azure

  1. Vai su https://azure.microsoft.com/it-it/free/search/ e clicca Inizia gratuitamente.

  1. Accedi con un account Microsoft (se non ne hai uno, creane uno).

Compila il profilo utente con paese, nome, cognome ed email:

Verifica il numero di telefono via SMS, inserendo il codice ricevuto:

  1. Accetta il contratto e premi Avanti:

Inserisci una carta di credito per la verifica dell'identità (non comporta addebiti senza il tuo consenso):

Conferma il paese/area geografica e premi Iscriviti:

ℹ️ Nota: Se hai già un account gratuito Azure e non puoi crearne un secondo, puoi iscriverti a un piano a consumo (pay-as-you-go) — Nightscout usa solo risorse gratuite, quindi il costo è zero. In tal caso vedrai il messaggio Non si è idonei per un account Azure gratuito: scegli l'iscrizione con pagamento in base al consumo.

Accetta di nuovo il contratto per il piano a consumo:

E scegli Nessun supporto tecnico prima di premere Iscriviti:

  1. Clicca sul menu Azure → Crea una risorsa.

Poi cerca App Web e clicca Crea:

  1. Compila le informazioni:
    • Sottoscrizione: seleziona il tuo account gratuito (o di base).
    • Gruppo di risorse: clicca Crea Nuovo, chiamalo Nightscout, clicca OK.

  • Nome: il nome del tuo sito Nightscout (solo lettere minuscole, numeri e -). Verifica che la spunta verde appaia a destra.

  • Pubblica: seleziona Contenitore Docker con Linux.
  • Area geografica: scegli un'area vicina a dove abiti.

  1. IMPORTANTE — Seleziona il piano gratuito: Clicca Modifica dimensioni (a fianco del piano proposto):

Scegli Sviluppo/testF1: gratuitoApplica.

Verifica che il riquadro mostri Gratuito F1, poi premi Avanti: Docker >.

  1. In Origine immagine, seleziona Docker Hub. In Immagine e tag scrivi:
    nightscout/cgm-remote-monitor:latest

  1. Clicca Rivedi e crea → verifica le informazioni → Crea.

  1. Aspetta il completamento della distribuzione...

...e quando è completata, clicca Vai alla risorsa.

Aggiungi le variabili di configurazione

  1. Nel menu di sinistra, clicca Configurazione.

Poi clicca + Nuova impostazione applicazione:

Aggiungi le seguenti variabili una alla volta (nome + valore → OK). Ecco ad esempio API_SECRET:

NomeValore
API_SECRETLa tua password Nightscout (minimo 12 caratteri, no spazi, no @, no !)
DISPLAY_UNITSmg/dl
MONGODB_URILa stringa generata al passo 1
ENABLEdbsize pump iob cob basal careportal sage cage bage

Se usi Dexcom Share come sorgente, aggiungi anche BRIDGE_PASSWORD, BRIDGE_SERVER e BRIDGE_USER_NAME:

E aggiungi bridge alla variabile ENABLE:

dbsize pump iob cob basal careportal sage cage bage bridge

Ecco un esempio con DISPLAY_UNITS e ENABLE compilati:

ℹ️ Nota: Se stai migrando da Heroku, copia tutte le variabili dal tuo sito Heroku (vedi sezione 5) e incollale qui allo stesso modo.

Una volta aggiunte tutte le variabili, l'elenco apparirà così:

  1. Clicca Salva in alto:

Conferma il riavvio dell'app cliccando Continua:


3. Configura il sito Nightscout

  1. Dal menu della tua app Azure, vai in Panoramica → copia l'indirizzo del sito (es. https://nomedeltuosito.azurewebsites.net).

  1. Aprilo nel browser. Se compare un errore "Timeout", aspetta 5 minuti e riprova. Il sito mostrerà l'orario e il menu laterale:

  1. Clicca sul menu → Profile Editor.

  2. Imposta il fuso orario: Europe/Rome.

  1. Scorri in fondo, clicca Authenticate, inserisci l'API secret...

...poi Update: lo stato diventerà Admin authorized. Premi Save.

Se il browser chiede conferma sul nuovo formato del profilo, premi OK:

Il salvataggio è confermato dal messaggio Status: success.

Se usi Dexcom Share, i dati appariranno entro qualche minuto. Per xDrip, Spike, xDrip4iOS ecc.: inserisci l'indirizzo del sito e l'API secret nell'app. Una volta connesso, il tuo sito Nightscout mostrerà la glicemia in tempo reale:


4. Aggiorna i dispositivi (solo migrazione da Heroku)

Devi aggiornare l'indirizzo Nightscout su tutti i tuoi dispositivi:

Per xDrip master (Cloud Upload), l'URL diventa:

https://nomedeltuosito.azurewebsites.net/api/v1

ℹ️ Nota: Il sito Azure mostrerà i dati anche con il vecchio indirizzo Heroku (il database è condiviso), ma il sito Heroku si è fermato: devi aggiornare tutti i dispositivi per continuare a ricevere dati.

Se vuoi mettere offline il vecchio sito Heroku per essere certo che tutti i dispositivi siano stati aggiornati, puoi attivare la Maintenance Mode dalle impostazioni dell'app Heroku:


5. Database Atlas esistente (migrazione da Heroku)

Se hai ancora accesso a Heroku:

  1. Vai su https://id.heroku.com/login e accedi con le tue credenziali.

Poi apri la tua app dall'elenco:

  1. Vai in SettingsReveal Config Vars.

  1. Copia il valore di MONGODB_URI...

...oppure di MONGO_CONNECTION se la prima non c'è (non MONGODB_COLLECTION).

  1. Usa questa stringa come MONGODB_URI nel passo 2 di Azure.

Se non hai più accesso a Heroku:

  1. Vai su https://account.mongodb.com/account/login e accedi con email e password del tuo account Atlas.

  1. Se ricordi la password del tuo utente database, segui il passaggio Connect nella tua homepage Atlas.
  2. Se non ricordi la password:
    • Vai in Database Access...

...e premi EDIT sull'utente esistente:

Cambia il ruolo in Only read any databaseUpdate User (questo disabilita temporaneamente il vecchio accesso).

  • Clicca + ADD NEW DATABASE USER:

Scegli un nome utente, genera una password con Autogenerate Secure Password, premi SHOW per visualizzarla e copiala:

Apri il menu Built-in Role e seleziona Atlas admin:

Se il ruolo non è ancora impostato, usa Add Built In Role:

Infine premi Add User:

Il nuovo utente comparirà nell'elenco Database Access insieme a quello vecchio (ora in sola lettura):

  • Torna in DatabaseConnect sul tuo cluster:

Scegli di nuovo Connect your application:

Copia la stringa e sostituisci <username> e <password> con i nuovi valori:

  1. Usa questa stringa come MONGODB_URI nel passo 2 di Azure.

Documentazione del gruppo Facebook Glicemiadistanza