Opal_06

Members
  • Posts

    5
  • Joined

  • Last visited

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

Opal_06's Achievements

Noob

Noob (1/14)

1

Reputation

  1. Recently, I have been dealing with very high RAM usage on my Unraid server, without a clear cause to pin it down to. When all my docker containers and VMs are running, I'm getting as high as 28 out of 32 GBs of RAM. After shutting down all containers and VMs and disabling both docker and VM support in settings, the system still reports 20GB used: root@home-server:~# free -h total used free shared buff/cache available Mem: 30Gi 20Gi 9.1Gi 652Mi 1.1Gi 9.1Gi Swap: 0B 0B 0B As this shows, it's not memory cache causing it, as the RAM is reported as actually used. Accounting for 4GB of ZFS arc, this left around 16GB used only for the OS and some plugins, which I found to be quite strange. So I ran ps aux | awk '{print $6/1024 " MB\t\t" $11}' | sort -n to get memory usage by process. This was its output (note it sorts from smallest to biggest, output is truncated at the beginning; in spoiler because of length): The OS spawned a huge amount of of `dhcpcd processes. Since they all take about 4-5MB of RAM, this had severe impact on free RAM. Running `free -h` again after disabling the feature yielded the following result: total used free shared buff/cache available Mem: 30Gi 3.7Gi 26Gi 652Mi 848Mi 26Gi Swap: 0B 0B 0B This is much more in line with what I would expect. I don't know exactly why enabling IPv6 privacy extensions causes this, or if it is even expected behaviour (in this case users maybe should be warned about the resource impact), but I thought I'd report it since it took me a while to find the issue and maybe it will help someone else. unraid-diagnostics-ipv6-privacy-high ram-usage.zip
  2. I am very sorry for not having caught these new posts earlier, I didn't get any alerts unfortunately. So, the size is simply a number set by Nightscout by default. This is, as @cobalt027 said, because the free MongoDB databases that are/were commonly used with Nightscout limited database size to 512MB. Now if you host your own MongoDB instance on Unraid (or any other server where these limits don't apply) it really doesn't matter, nor will it prevent the database from growing beyond the limit, as far as I understand (as long as there is storage space left). Anyway, you can change the size by adding the following variable in the template: Key: DBSIZE_MAX Value: <size in MB> Additionally, you can change the view to just show you database size instead of percentage, which is maybe more interesting: Key: DBSIZE_IN_MB Value: true ------------------------------------ Edit: I also updated the template to use the more up-to-date images as suggested by @robschwieb
  3. Generally speeking, bridge is preferable. If you want to use reverse proxy, bridge or a custom docker network is necessary (at least to my understanding). As for URL, the documentation says the following: "Used for building links to your site's API, i.e. Pushover callbacks, usually the URL of your Nightscout site." So it seems you need a globally routable URL. The easiest way to achieve this should be through a reverse proxy like Let's encrypt (which comes with the added bonus of proper SSL certification). Or you can use a custom docker network configured to expose the Nightscout container as its own device on your local network and therefore giving you the possibilty to create a dynamic DNS record and port forwarding to that specific container. Reverse proxy is strongly advised though. As for the URL format itself, the port is omitted, e.g.: https://nightscout.your-dromain.com No need to apologise for the questions, that's what this thread is for.
  4. Glad you like it. Maybe also consider setting her up with a closed loop system. Have a look at this: https://androidaps.readthedocs.io/en/latest/EN/index.html
  5. This is the support thread for the Nightscout docker template available via the Community Applications plugin. The template pulls the official docker image build by the Nightscout team from their Docker hub. Nightscout is the front end to a remote blood glucouse monitoring system which can be used by diabetics or relatives of diabetics to monitor, log and evaluate their blood glucouse values. You can learn more over here: http://www.nightscout.info/ Setting the container up: Install dependencies: The Nightscout container relies on a MongoDB instance for its database. You can install MongoDB from the CA plugin. Set up database: Please refer to the official MongoDB documentation on how to set up a database and user. The user neads ReadWrite access to the database. Your db needs the following collections: activity, auth_subjects, devicestatus, entries, food, profile, settings, treatments. You can also import an existing MongoDB database from another deployment by using mongodump and mongorestore. To get the dump of the remote database, enter the console of your local MongoDB container. Use this to get a local dump of the database (you can get the URI from Nightscout's configuration variable): mongodump --uri="<yourmongodb-uri>" -o <output-dir> Then use this to import the data from the dump: mongorestore --db <new_database_name> <path_to_dump> You still need to create a user that has RW permission on the new database. Install Nightscout: Download and install the template. Fill in the MongoDB URI according to the given pattern and link it to the IP address and port of the MongoDB container. Note that Nightscouts behaviour is entirely controlled by variables that can be passed through by Docker. As there are many options, only the most relevant are predefined and exposed in the template. Use the "Add another Path, Port, Variable, Label or Device" feature to add additiononal variables. Please refer to this for an extensive list of variables and possible values. Optional: Pass through reverse proxy: If you use a reverse proxy setup (e.g. swag), you can use Nightscout with it. There is no preconfiguered Nightscout sample in swag, but I had good success adapting the Nextcloud sample code simply by changing the names in the file. You also need to set the INSECURE_USE_HTTP variable in the Nightscout container to true. This is fine as it affects only traffic on the Docker network inside your server. Edit: While this is still a valid approach, the better one would be to set the X-Forwarded-Proto header inside your nightscout proxy-conf, so Nightscout knows it runs on https behind a secure proxy: location / { ... proxy_set_header X-Forwarded-Proto $scheme; } Note that Nightscout itself has no real authentification scheme for the main page by default, although it can be made to ask for the API secret before showing the page. This might brake some features though, so exposing it on the internet might be unwanted (although it might be necessary for e.g. proper remote monitoring). For further documentation of Nightscout refer to this: https://github.com/nightscout/cgm-remote-monitor Have fun and feel free to post suggestions or reach out for help in this thread, opal_06