Compose plugin exec feature
-
-
if you have https enabled (forced or not) for OMV's web interface, the terminal will use https. Otherwise it will use http.
what is the output of from the command line of your omv system:
wget --no-check-certificate -O - http://localhost:6000/
wget --no-check-certificate -O - https://localhost:6000/
-
that is:
Codepermitted by applicable law. Last login: Fri May 23 17:46:07 2025 from 192.168.1.100 root@bdns:~# wget --no-check-certificate -O - http://localhost:6000/ --2025-05-24 17:39:44-- http://localhost:6000/ Resolviendo localhost (localhost)... ::1, 127.0.0.1 Conectando con localhost (localhost)[::1]:6000... falló: Conexión rehusada. Conectando con localhost (localhost)[127.0.0.1]:6000... falló: Conexión rehusada. root@bdns:~#and
Coderoot@bdns:~# wget --no-check-certificate -O - https://localhost:6000/ --2025-05-24 17:40:49-- https://localhost:6000/ Resolviendo localhost (localhost)... ::1, 127.0.0.1 Conectando con localhost (localhost)[::1]:6000... falló: Conexión rehusada. Conectando con localhost (localhost)[127.0.0.1]:6000... falló: Conexión rehusada. root@bdns:~#and for example on putty on port 3000:
Coderoot@bdns:~# wget --no-check-certificate -O - https://localhost:3000/ --2025-05-24 17:41:45-- https://localhost:3000/ Resolviendo localhost (localhost)... ::1, 127.0.0.1 Conectando con localhost (localhost)[::1]:3000... conectado. GnuTLS: Se recibió un paquete TLS inesperado. No se pudo establecer la conexión SSL. root@bdns:~#or in the qbitorrent on port 8080
Coderoot@bdns:~# wget --no-check-certificate -O - https://localhost:8080/ --2025-05-24 17:43:42-- https://localhost:8080/ Resolviendo localhost (localhost)... ::1, 127.0.0.1 Conectando con localhost (localhost)[::1]:8080... conectado. GnuTLS: La conexión TLS no se finalizó apropiadamente. No se pudo establecer la conexión SSL. root@bdns:~# -
-
What about: sudo ss -tulpn | grep -E "6000|omv"
-
What about: sudo ss -tulpn | grep -E "6000|omv"
-
That shows it is running correctly.
What about : wget --no-check-certificate -O - https:://192.168.1.5:6000/ # change to http and remove no-check-certificate if you don't have http enabled.
-
-
that is:
HTML
Display Moreroot@bdns:~# wget --no-check-certificate -O - https://192.168.1.5:6000 --2025-05-25 18:07:45-- https://192.168.1.5:6000/ Conectando con 192.168.1.5:6000... conectado. AVISO: El certificado de «192.168.1.5» no es confiable. AVISO: El certificado de «192.168.1.5» no tiene un emisor conocido. Petición HTTP enviada, esperando respuesta... 200 OK Longitud: 1577 (1,5K) [text/html] Grabando a: «STDOUT» - 0%[ ] 0 --.-KB/s <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Docker Terminal - Login</title> <!-- Google Fonts --> <link href="https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap" rel="stylesheet"> <!-- Font Awesome --> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"> <link rel="stylesheet" href="/static/login.css"> </head> <body> <div class="container"> <button id="themeToggle" class="theme-toggle"> <i id="themeIcon" class="fas fa-moon"></i> </button> <h1><i class="fab fa-docker"></i> Docker Terminal Login</h1> <form action="/login" method="POST"> <div class="form-group"> <label for="username">Username</label> <input type="text" id="username" name="username" placeholder="Enter your username" required> </div> <div class="form-group"> <label for="password">Password</label> <input type="password" id="password" name="password" placeholder="Enter your password" required> </div> <input type="hidden" name="container" value="None"> <button type="submit"> <i class="fas fa-sign-in-alt"></i> Login </button> </form> </div> <script src="/static/light-dark-theme.js""></script> </body> - 100%[======================================================>] 1,54K --.-KB/s en 0s 2025-05-25 18:07:45 (27,1 MB/s) - escritos a stdout [1577/1577] root@bdns:~#but still no webGUI on
My bdns.local:
192.168.1.5 :
-
more info:
Coderoot@bdns:~# wget --no-check-certificate -O - https://bdns.local:6000/ --2025-05-25 18:12:34-- https://bdns.local:6000/ Resolviendo bdns.local (bdns.local)... ::1, 127.0.1.1 Conectando con bdns.local (bdns.local)[::1]:6000... falló: Conexión rehusada. Conectando con bdns.local (bdns.local)[127.0.1.1]:6000... falló: Conexión rehusada. root@bdns:~# wget --no-check-certificate -O - https://bdns:6000 --2025-05-25 18:12:51-- https://bdns:6000/ Resolviendo bdns (bdns)... ::1, 127.0.1.1 Conectando con bdns (bdns)[::1]:6000... falló: Conexión rehusada. -
https://192.168.1.5:6000 is working. If it does not work in your browser, it is a browser issue. It looks like it says the site isn't secure. You either tried http instead of https and/or you are using a self-signed cert for omv https. I can't change anything in the plugin to help with this.
-
-
yes I use a self-signed cert for HTTPS but is recognised as secure https://forum.openmediavault.o…lipboard-png/&thumbnail=1
eg: https://bdns,local is recognised as secure
Is my culprit?
how to solve?
to use a self-signed cert use stepts described here: [HOWTO] create a self signed cert to use HTTPS with multiples CN and IP
-
Your self-signed cert should be for bdns.local and should cover https on 443 and 6000. I didn't read your howto but maybe you are only accepting the cert on a single port?
I would not use a self signed cert. certbot is easy enough to use and easier than the steps you are using to use a self-signed cert.
-
Display More
sorry but do not work for me, I use port 6000 because one docker use port 5000, but exec do not work:
exec try to connect to: https://bdns.local:6000/terminal/heimdall
finally solved, I need to use a low port on my case 1025 do the trick
-
-
I've just seen that Exec function has lxc added to the container list, which is nice.
I probably have a rough answer to what I'm asking, but why is lxc accessed from within the compose plugin? I assume because that's where the exec function is already working.
But would it not be better to have it as separate one line button on the side service tab, like 'WeTTY', something like 'Exec', or 'Exec Container', then accessing both docker and lxc from the same container menu seems to me make better sense to me?
-
but why is lxc accessed from within the compose plugin? I assume because that's where the exec function is already working.
Because it was easy to add without duplicating a ton of code.
But would it not be better to have it as separate one line button on the side service tab, like 'WeTTY', something like 'Exec', or 'Exec Container', then accessing both docker and lxc from the same container menu seems to me make better sense to me?
It would need to be broken out into a separate plugin for that. I still haven't decided if I want to do that or not. I probably will but even then, there will be links to lxc container terminal from the kvm plugin and already is links to the docker container terminal from the compose plugin. Please just be patient. I have ideas in my head and want to develop them as I have time. I will let people know when I am open to ideas on this.
-
ok but then the compose plugin would have to check if the exec container plugin is installed, and this is an additional query, of which there are already a lot looking at the code
-
-
ok but then the compose plugin would have to check if the exec container plugin is installed, and this is an additional query, of which there are already a lot looking at the code
The openmediavault-cterm plugin is a dependency of the openmediavault-compose plugin and will be a dependency of the openmediavault-kvm plugin. No check needed. I have already tested this and it is working fine. There are pros and cons of separating the code to a separate plugin. I have decided to separate it mainly to reduce having to maintain two copies of it. It will be ok and I did most of the work last night. Still a couple more things to fix but it went well.
-
ok, and how do you want to add a link to compose? so that it would have to check if it is installed and active, then display the link to the terminal
that's my observation
-
how do you want to add a link to compose? so that it would have to check if it is installed and active, then display the link to the terminal
I don't understand the question. Are you referring to the link in the compose plugin? The compose plugin can read database entries of other plugins. If that is what you are referring to, that is already fixed on github. Please just wait for the release and then worry about the problems that are likely already fixed.
-
-
Because it was easy to add without duplicating a ton of code.
That's what I thought and I don't blame you for doing it that way.
It would need to be broken out into a separate plugin for that. I still haven't decided if I want to do that or not. I probably will but even then, there will be links to lxc container terminal from the kvm plugin and already is links to the docker container terminal from the compose plugin. Please just be patient. I have ideas in my head and want to develop them as I have time. I will let people know when I am open to ideas on this.
That's more than a fair answer, in fact that would be the best of all worlds.
TBH I always feel a little guilty when asking for something extra, but to me, most developers do think the same ideas as I might, but I've always thought if no-one asks, then it shows no one really cares and yes sometimes the program is just right as it is.
I never assume anything I ask for will be done, I'm just grateful that developers put the time and effort in, if my suggestion gets added it's a bonus for me and hopefully for other users.
Going forward I'll wait to see if you or other developers ask for suggestions.
Thanks again though.
Participate now!
Don’t have an account yet? Register yourself now and be a part of our community!