I’ve been playing with the Rancher API- Im sending a command to a container to execute some commands in the shell.
I get back my response from the API:
“url”: “wss://XXX.XX.XXX.132:9998/v1/exec/”,
“token”: <>
I then understand, for the commands I have sent to be executed on the container I need to connect with WSS. Here are where my problems start.
Im trying to use a WSS client using the following syntax:
wss://URL/v1/exec/?token=token_From_api_call
Which is just giving me errors in all the clients I try- I’ve even tried using the request that I captured the Rancher UI and I still cant connect.
Does it look like Im doing anything wrong? I can open a shell in Rancher UI and see Status Code:101 Switching Protocols if I have chrome developer tools open
Also does anyone happen to have an example of using cUrl to connect to the WSS address?
Since you’re getting back wss:// you must have SSL setup, but you have an IP address rather than a hostname. So any certificate check is going to fail, and my guess is your client is requiring that the certificate match. (ignoring that is what -n does for wscat)
No it’s just the same token from the previous response. 401 is unauthorized; the tokens are only good for 5 minutes, so you need to generate and use it fairly quickly. And the time on the rancher/server and the host that is running the container you’re connecting to need to be approximately accurate.