I’m fresh out of ideas on that one.
Take a look at what linuxserver.io has to say, which is the underlying image for this rockon:
So, it should be possible with some additional step (easiest will be to spin up the nvidia container outside of Rockstor, since there is currently no Rockon definition for it. If that works, and you share your experience then we can think about possibly adding this as a standalone Rockon.
There also was a conversation on the forum a couple of years ago that, involved essentially creating a custom Rockon (based on the existing jellyfin) with a couple of additional parameters added in.
As for the Netdata challenge. Let’s try to add SYS_ADMIN
to the definition, like this:
{
"Netdata (Test)": {
"containers": {
"netdata_test": {
"image": "netdata/netdata",
"launch_order": 1,
"opts": [
[
"--cap-add=SYS_ADMIN",
""
],
[
"--cap-add=SYS_PTRACE",
""
],
[
"--cap-add=SYS_RAWIO",
""
],
[
"--security-opt",
"apparmor=unconfined"
],
[
"--net=host",
""
],
[
"-v",
"/var/run/docker.sock:/var/run/docker.sock"
],
[
"-v",
"/proc:/host/proc:ro"
],
[
"-v",
"/sys:/host/sys:ro"
],
[
"-v",
"/etc/os-release:/etc/os-release:ro"
]
],
"ports": {
"19999": {
"description": "Port used to access the webUI port. MUST be 19999.",
"host_default": 19999,
"label": "webUI port",
"ui": true
}
},
"environment": {
"PGID": {
"description": "GID of the 'docker' group. See System - Identity - Groups in Rockstor's UI to find it.",
"label": "PGID",
"index": 1,
"default": 472
}
}
}
},
"description": "Netdata is a scalable, distributed, real-time, performance and health monitoring solution for Linux, FreeBSD and MacOS.<p>Out of the box, it collects 1k to 5k metrics per server per second. It is the corresponding of running top, vmstat, iostat, iotop, sar, systemd-cgtop and a dozen more console tools in parallel. netdata is very efficient in this: the daemon needs just 1% to 3% cpu of a single core.</p><p>Based on the official docker image: <a href='https://hub.docker.com/r/netdata/netdata' target='_blank'>https://hub.docker.com/r/netdata/netdata</a>, available for amd64 and arm64 architecture.</p>",
"icon": "https://github.com/firehol/netdata/blob/master/web/images/seo-performance-64.png",
"more_info": "See <a href='https://learn.netdata.cloud/' target='_blank'>https://learn.netdata.cloud/</a> for more info.",
"website": "https://www.netdata.cloud/",
"ui": {
"slug": ""
},
"version": "1.0t"
}
}
If this works, great. If not, there might be one more option that can be added (the actual --privileged
flag. Maybe @Flox who set up the original Rockon definition has some opinion on this, because I believe, he tried to define the Rockon so it would have the minimal required access for security purposes. Adding parameters like --priviliged
or the SYS_ADMIN
capability gives the docker container quite a bit of unrestricted access to the Rockstor host.
But, if you can try it out, then at least gets us a step closer to why smartctl
is being so prickly vis-a-vis the docker container.
EDIT: looking at this link, I think the above is not going to make it better, but a different approach has to be taken:
https://learn.netdata.cloud/docs/collecting-metrics/hardware-devices-and-sensors/s.m.a.r.t.
Please try it anyway, as the alternative might require a mapping of each hard drive device you have