Nightscout selbst aufsetzen und hosten

  • Ich versuche Nightscout gerade auf ubuntu zu installieren, hier kommt jedesmal ein Fehler. Hat hier noch jemand einen Tip.


    nach dieser Anleitung versuche ich das ganze:

    https://www.michael-schloemp.d…ntu-vps-server-mit-nginx/

    █══════████████████────────
    puɐʇsɟdoʞ uǝuıǝ ǝpɐɹǝƃ ʇɥɔɐɯ 'uuɐʞ uǝsǝl sɐp ɹǝʍ シ

  • Das ist ein npm Error 134. Memory Error.

    Könnte es sein das dein Server nur 1gb RAM oder weniger hat?

    hier kommt jedesmal ein Fehler. Hat hier noch jemand einen Tip.


    nach dieser Anleitung versuche ich das ganze:

    https://www.michael-schloemp.d…ntu-vps-server-mit-nginx/

  • Mit mehr Speicher sieht es auch nicht besser aus




    █══════████████████────────
    puɐʇsɟdoʞ uǝuıǝ ǝpɐɹǝƃ ʇɥɔɐɯ 'uuɐʞ uǝsǝl sɐp ɹǝʍ シ

  • Nutzt doch einfach docker mit einem gescheiten docker-compose file und ihr braucht 3 Kommandos im alles zu installieren (z.B. hier).


    Müsst nur in der docker-compose.yml YOUR-DOMAIN.TLD durch eure Domain ersetzen.


    Edit: Das funktioniert auch mit 1GB problemlos.

  • Mit mehr Speicher sieht es auch nicht besser aus

    Code

    Ich stehe da gerade auch vor.

    Ich habe einen wirklich mikrigen kleinen Testserver mit 1gb RAM und erhalte die selbe Meldung.

    Es ist ein Memory Error.

    Laut npm/nvm Docs wird empfohlen die Version zu aktualisieren.

    Das hat bei mir allerdings noch kein Erfolg gebracht.

    Bei meinen beiden anderen besseren Servern läuft es ohne Probleme. Dementsprechend denke ich dass es am RAM liegen könnte.

    Sicher bin ich mir aber noch nicht.


    Wie sind deine Specs?

  • Proxmox Server mit lxc Container habe im ersten Versuch 1GB zugewiesen und im zweiten Anlauf 2GB/4GB zugewiesen. Das Problem sind die Abhängigkeiten die auch mit fix sich nicht alle lösen lassen. Oder die Versionen von Ubuntu/Node.js/npm sind zu alt...





    Code
    found 10 vulnerabilities (3 low, 3 moderate, 3 high, 1 critical)
    run `npm audit fix` to fix them, or `npm audit` for details

    █══════████████████────────
    puɐʇsɟdoʞ uǝuıǝ ǝpɐɹǝƃ ʇɥɔɐɯ 'uuɐʞ uǝsǝl sɐp ɹǝʍ シ

  • Teste jetzt nochmal eine VM ins Proxmox. Das lxc Image heist (ubuntu-20.04-standard_20.04-1_amd64.tar.gz)


    Nutzt doch einfach docker mit einem gescheiten docker-compose file und ihr braucht 3 Kommandos im alles zu installieren (z.B. hier).


    Müsst nur in der docker-compose.yml YOUR-DOMAIN.TLD durch eure Domain ersetzen.


    Edit: Das funktioniert auch mit 1GB problemlos.

    Das finde auf dem Proxmox Server etwas doppelt gemoppelt.

    █══════████████████────────
    puɐʇsɟdoʞ uǝuıǝ ǝpɐɹǝƃ ʇɥɔɐɯ 'uuɐʞ uǝsǝl sɐp ɹǝʍ シ

  • Teste jetzt nochmal eine VM ins Proxmox. Das lxc Image heist (ubuntu-20.04-standard_20.04-1_amd64.tar.gz)


    Das finde auf dem Proxmox Server etwas doppelt gemoppelt.

    Lade dir das Ubuntu 20.04 Server Image runter.

    Hatte schon einen anderen Kontakt, der das Desktop verwenden wollte und gescheitert ist.

  • Das finde auf dem Proxmox Server etwas doppelt gemoppelt.

    Es geht ja nicht primär um die Virtualisierung, sondern dass du dich nicht mit verschiedenen inkompatibeln node oder npm Versionen oder missing dependencies rumschlagen musst. DAS ist der große Vorteil von docker und tools wie swarm bzw. docker-compose. Dir geht auch nicht so viel bei einem Update kaputt etc.


    Aber jedem das seine, viel Vergnügen...

  • Also die aktuelle Ubuntu 22.04 unter Proxmox im lxc Container läuft. Nodejs ist die aktuelle LTS Version (v18.16.0). Nach dem npm install kommt noch ein npm audit fix --force Danach lief es jetzt bei mir.


    Link zur Anleitung:

    https://github.com/sp4plm/Self-Hosted-Nightscout-on-Ubuntu


    In den Abhängigkeiten von Nightscout steht Version Nodejs 14-16 drin, ältere laufen dann wohl nicht mehr.



    Es geht ja nicht primär um die Virtualisierung, sondern dass du dich nicht mit verschiedenen inkompatibeln node oder npm Versionen oder missing dependencies rumschlagen musst. DAS ist der große Vorteil von docker und tools wie swarm bzw. docker-compose. Dir geht auch nicht so viel bei einem Update kaputt etc.


    Aber jedem das seine, viel Vergnügen...

    Ich kenne leider auch den umgekehrten weg. Container aktualisiert, danach startet er nicht mehr... in den Container laufen teilweise uralte Versionen, und Docker bringt von Hause ja keine Update Funktion für die Container mit. Es gibt zwar dienste wie Watchtowwer die das übernehmen aber auch hier hakt es ab und zu. In Proxmox läuft es nach dem einrichten meist auch, hier ist die Backup und Netzwerk Konfiguration besser und einfacher gelöst.

    █══════████████████────────
    puɐʇsɟdoʞ uǝuıǝ ǝpɐɹǝƃ ʇɥɔɐɯ 'uuɐʞ uǝsǝl sɐp ɹǝʍ シ

    Einmal editiert, zuletzt von Typ1er ()

  • Wie exportiert und importiert man jetzt die Datenbank bei heroku?

    █══════████████████────────
    puɐʇsɟdoʞ uǝuıǝ ǝpɐɹǝƃ ʇɥɔɐɯ 'uuɐʞ uǝsǝl sɐp ɹǝʍ シ

  • Ich antworte mir mal selbst.



    Export:

    mongodump --uri mongodb+srv://heroku_wq75wg5w:12345678@cluster-wq75wg5w.zf5zf.mongodb.net/heroku_wq75wg5w


    Import

    IP (-h), Datenbankname (-d) und Pfad anpassen

    mongorestore -h 127.0.0.1 -d Nightscout /root/mongo/dump/heroku_wq75wg5w/

    █══════████████████────────
    puɐʇsɟdoʞ uǝuıǝ ǝpɐɹǝƃ ʇɥɔɐɯ 'uuɐʞ uǝsǝl sɐp ɹǝʍ シ

  • Ich brauche mal einen Tip.


    Freigabe läuft bei mir auf der Fritzbox über myfritz. Wie bekomme ich das ganze für einen zweiten user hin?



    Neue VM + andere Ports war eine Sackgase, hier bekomme ich certbot nicht zum laufen.

    █══════████████████────────
    puɐʇsɟdoʞ uǝuıǝ ǝpɐɹǝƃ ʇɥɔɐɯ 'uuɐʞ uǝsǝl sɐp ɹǝʍ シ

  • Fraglich ob es hilft: Ich habe zwei Raspberrys dafür laufen (3B, daher einer zu schwach für 2 Instanzen fürchte ich). Für das Zertifikat mit Certbot hab ich den Port angepasst (80/443) und danach wieder auf andere Ports gelegt, damit diese eine eigene myfritz Adresse nutzen können. Nun laufen zwei Instanzen auf verschiedenen Ports mit den Zertifikaten.

  • Bei mir sieht es jetzt so aus:



    Die Ports, als auch die IP-adresse spielen irgendwie keine rolle. Oder ich verstehe den Sinn dabei nicht.


    die Weiterleitungen mit nginx funktionieren:

    typ1er.xxxxxxxxxxxxxxxxx.myfritz.net

    typ1erin.xxxxxxxxxxxxxxxxx.myfritz.net


    Beide Seiten sind nur per https ansprechbar.

    █══════████████████────────
    puɐʇsɟdoʞ uǝuıǝ ǝpɐɹǝƃ ʇɥɔɐɯ 'uuɐʞ uǝsǝl sɐp ɹǝʍ シ

  • Nur beim Renewal des Zertifikates aufpassen, da bei zu vielen Fehlversuchen eine zeitliche Sperre bei Certbot hervorrufen (s. https://letsencrypt.org/docs/rate-limits/).

    Ich habe dafür den Termin eine Woche vor Ablauf im Kalender. Hier die aktuelle Instanz auf 80/443 mit Zertifikat versorgen,dann in der nginx config die Ports anpassen sowie im Router und die Erneuerung der Zertifikate der weiteren Instanzen nach einander durchlaufen lassen. Danach die Ports erneut anpassen wie du es benötigst.


    Für den Zugriff auf die Seite sind die Ports wohl echt egal, Certbot führt die Erneuerung der Zertifikate nur auf Ports 80/443 aus.

  • Hallo zusammen,


    ich bin neu hier und habe mal eine Frage bezüglich SSL mit nginx.


    Ich habe 2 Nightscout Instanzen laufen und nutze den 600-Series-Android-Uploader https://github.com/pazaan/600SeriesAndroidUploader zusammen mit dem Contour Next Link 2.4 von der Minimed 640g.


    Meine 2 Söhne haben beide Typ1 (3 und 5 Jahre alt) und bisher lief deren Nightscout auf heroku, jetzt Lokal.


    Ich möchte auch nicht, dass NS von außen erreichbar ist, außer über VPN. VPN Zugänge haben alle Geräte und die Infrastruktur steht.


    Nur möchte die Uploader App nicht an meinen NS Server senden, da er nicht über https arbeitet. Es kommt immer die Fehlermeldung "CLEARTEXT communication not permitted by network security policy"


    Nun gibts da diverse Anleitungen wie man ein manuelles SSL Zertifikat nutzen kann mit dem nginx Webserver, aber die benötigen alle eine Domain (Oder ich verstehe es nicht).


    Ich will nur, dass die IP meiner Virtuellen Maschine wo NS läuft, über https Erreichbar ist. Also so https://ip:1337.


    Ich bekomme das einfach nicht zum laufen.


    Der NS Server läuft auf Ubuntu.


    Ich hoffe ihr könnt mir helfen. Vielen Dank :)

  • Nun gibts da diverse Anleitungen wie man ein manuelles SSL Zertifikat nutzen kann mit dem nginx Webserver, aber die benötigen alle eine Domain (Oder ich verstehe es nicht).

    SSL funktioniert aber nur so. Ein SSL-Zertifikat ist im Grunde ein Zertifikat, das bestätigt, dass Dir diese bestimmte Domain gehört. Da dein NS nur intern bzw. über ein verschlüsseltes VPN erreichbar ist, brauchst du kein zusätzliches SSL. Das wäre doppelt gemoppelt. Man kann das auch ausschalten.

    Ich habe allerdings gehört, dass zumindest AAPS auf SSL besteht. Aber auch da gibt es einen Pull-Request, der das umgeht.