microsoft / vscode-jupyter

VS Code Jupyter extension
https://marketplace.visualstudio.com/items?itemName=ms-toolsai.jupyter
MIT License
1.28k stars 288 forks source link

Terminal support on remote Remote Jupyter Servers (JupyterHub server) #14874

Open elgalu opened 11 months ago

elgalu commented 11 months ago

This extension is great, one can start remote JupyterHub kernels with it. I couldn't find how to start a remote Terminal on the remote JupyterHub server, would that be feasible?

DonJayamanne commented 11 months ago

Thank you for your feedback.

remote JupyterHub server, would that be feasible?

Definitely.

Btw, have you checked out https://code.visualstudio.com/docs/remote/tunnels

In both cases you can connect to the remote machine (jupyter hub) and work on it as though everything was local. Files, terminal, everything runs on that machine and VS Code displays as local.

Mentioning this as not many are aware of this feature, There are other mechanisms to get the same functionality (remote SSH as well). If this still does not work for you, please do let me know why this isn't a great solution, so we can try to improve it.

elgalu commented 11 months ago

Thanks Don, I tried vscode a few weeks ago and was very unreliable, got tilt, I basically couldn't do any work with it.

Remote SSH is not feasible as there's not direct ports to those remote K8s machines, also no kubectl access so not kubectl port-forward possibilities either.

mcitoler commented 11 months ago

@elgalu, you might be interested in the kubernetes tool extension You can use it to attach VSCode to a running k8s pod. However, I've found some issues while trying to use Jupyter notebooks in them, see for example https://github.com/microsoft/vscode-jupyter/issues/12764. I think that if you don't use .code-workspace files to organize your stuff you should be fine.

jabbera commented 11 months ago

Thanks Don, I tried vscode a few weeks ago and was very unreliable, got tilt, I basically couldn't do any work with it.

Remote SSH is not feasible as there's not direct ports to those remote K8s machines, also no kubectl access so not kubectl port-forward possibilities either.

You can host sshd on a pod with ingress and use it as a jump host.