[Plugin] ControlR


Recommended Posts

Hi there. I am using unraid v 6.6.6, ControlR v 2018.10.3, and ControlR android app v 4.5.0

 

I have the user account set to only show a single VM with visible, read, and exec checked. All other VMs or Docker containers are blank. When I log into the app on my tablet, however, all Docker containers are visible (though not selectable). Also, all VMs are visible (though not selectable).

 

How do I prevent Docker containers or VMs even being visible when they have not been selected in the plugin UI?

 

I dont need Dockers to be accessible via the app and also want to control which VMs are visible.

Link to comment

Hi,

 

If visible is unchecked, the docker/vm should not appear.

 

So you're accessing the app with a user other than root and you can see everything.

 

What do you mean by not selectable? That there is no action available ?

 

Can you send me screenshots of :

- The plugin UI (where you marked not visible the docker/vms)

- The docker/vm tabs of the app (as list preferrably)

- The description of the user (it's in the User definition of Unraid itself)

 

PM if you prefer.

Link to comment

Yes. I am logging in from the Android app using a user I created called "vmuser". I have to utilise the root password as the one for the actual "vmuser" does not find a server.

 

By unselectable, I mean that the VM is listed with the start, edit, and undefine options greyed out.

 

There is also some weirdness going on with checking the various boxes next to a VM in the plugin. If I check a box another previously checked box disappears and another one appears. It is like playing whack-a-mole.

 

As an example I just removed all check marks. When I check "Visible" for a VM "Read" also is checked. When I then check "Exec" it stays checked for a few seconds then becomes unchecked. If I then go to another VM and check "Visible" it stays checked for a second or so then becomes unchecked. However, the "Exec" which I had previously checked, which went unchecked, now becomes checked.

 

I am using Chrome v 71.0.3578.98.

 

On the Android device, I would like to only have displayed a "Start" and "Stop" button for whatever VMs I want to be selected. I am intending to use your app as an interface to start whatever VM I want onto my monitors. So whilst I have a bunch of VMs I dont need to have shown on the app as starting them doesn't do anything because they don't have GPU pass-throughs.

 

For example, when I am no longer using my desktop VM I want to shut it down and turn off the monitors. When I do want to use it again I can start whichever VM I want to utilise using the Android app. Which means only VMs with GPU passthroughs.

 

The description changes every time I make alterations in the plugin as well.

Screenshot_2019-01-31-10-33-36.png

plugin.png

Screenshot_2019-01-31-10-38-08 dockers.png

vmuser.png

Edited by darrenyorston
spelling
Link to comment

Thanks a lot for the info darrenyorston.

 

With regards to apps showing as unselectable, it was a design decision I made when I implemented the feature.

 

The idea was that you could 'taunt' the non-root users and tell them ... look! look at all the apps you're missing out on, since you're not root 😁 😁 😁 !

 

Joking aside, I can't remember why I decided to show the docker/vm as non selectable, even if marked as not visible.

 

I've fixed this behavior in my dev environment. If Visible is not checked, the app won't appear.

 

I'm waiting for 6.7.0 stable to release a new version (which should be 'any time now' (tm) 😁).

 

As for the whack-a-mole, that's mostly for consistency.

 

I can see only three scenarios in which the plugin checks a box under the hood:

 

- user checks VISIBLE -> plugin checks READ

- user un-checks VISIBLE -> plugin un-checks all the rest

- user un-checks READ -> plugin un-checks all the rest

 

There's probably a couple automations I've missed, but it seems to work consistently for now.

 

 

Link to comment
  • 2 weeks later...

If I have a user setup in unraid and the same configured in the ControlR settings to be allowed to VIEW, READ and EXEC a specific VM or Docker that exact using should see that VM and or Docker in the android app, right? I am a bit confused right now. I had the user root conected before and all showed up. As soon as i use another user, none of the Docker or VMs are shown. Did i miss something?

 

Currently on 6.7.0 RC3 and the newest Android app version 4.7.0

Link to comment

Try this in a server terminal ...

ps aux | grep controlr
# copy the controlr exec string, it will be something like /usr/local/emhttp/plugins/controlr ...
killall controlr
# paste the previous command
/usr/local/emhttp/plugins/controlr ...

This is to get an idea of what the plugin is doing, post back the command output.

 

Link to comment
8 hours ago, jbrodriguez said:

I: 2019/02/21 08:30:15 app.go:57: controlr v2.15.0-398-e62b436-v2019.02.08 starting ...
I: 2019/02/21 08:30:15 app.go:65: No config file specified. Using app defaults ...
I: 2019/02/21 08:30:15 core.go:73: starting service Core ...
I: 2019/02/21 08:30:15 core.go:266: Created system sensor ...
I: 2019/02/21 08:30:15 core.go:296: No ups detected ...
I: 2019/02/21 08:30:15 server.go:94: Starting service Server ...
I: 2019/02/21 08:30:15 server.go:113: Serving files from /usr/local/emhttp/plugins/controlr
I: 2019/02/21 08:30:15 server.go:173: Server started listening http on :2378
I: 2019/02/21 08:30:15 server.go:185: Server started listening https on :2379
I: 2019/02/21 08:30:15 api.go:46: Starting service Api ...
I: 2019/02/21 08:30:15 api.go:94: Api started listening https on :2382
I: 2019/02/21 08:30:15 app.go:85: Press Ctrl+C to stop ...


ps aux | grep controlr
# copy the controlr exec string, it will be something like /usr/local/emhttp/plugins/controlr ...
killall controlr
# paste the previous command
/usr/local/emhttp/plugins/controlr ...

This is to get an idea of what the plugin is doing, post back the command output.

 

 

Edited by darrenyorston
edit
Link to comment
18 minutes ago, jbrodriguez said:

If you change port 2378 to 2379, can you confirm that it works ?

 

There's some issue with the plugin php/js logic to detect whether the server is running ssl or no. I'm looking into it.

 

Also, is your ssl set to yes or auto ?

Didnt work. I tried a few other ports as well. Same result.

 

SSL is set to yes.

Link to comment
10 hours ago, jbrodriguez said:

It should have worked. It was a different error though, right ?

 

Can you:

 

- restart the plugin ( enable no, apply, enable yes, apply)

- click on the link (will take you to the 2378 port)

- change to 2379 manually

- report the result

 

If I change the port to 2379 the server wont start. It shows stopped even though Enable Control Server is set to Yes. And yes I clicked Apply and Done.

 

Its the same error code regardless of the port I try: SSL_ERROR_RX_RECORD_TOO_LONG

 

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.