Remote development

I started working on remote DGX server remotely, and I didn’t manage to set up Languageserver.jl to work on the remote server and the editor to work locally (Emacs or VScode).

Does someone manage to do so?
Is there a best practice to working remotely with Julia(I don’t have Nvidia GPU on my local laptop, so I didn’t install CUDA.jl)?

If you are using the remote SSH extension for VS code, then the language server should come with the Julia extension. You just have to install that extension again after you open a remote folder (it won’t take your extensions with you).

1 Like

I probably missed that. Just to make sure, the VSCode runs locally? I have some colleagues that use Teamviewer :face_with_spiral_eyes:

If you want to implement probably the most popular way of VS Code remote development strategy then yes, the VS Code in a sense runs locally and connects to a remote server. You can also run Code Server on the server and access it from a browser. Of course you can also access the server by a remote desktop like TeamViewer or NoMachine or Nice DCV. There are several strategies but if you want to have it light and fairly simple I would recommend the first option.

Yes you run VS Code locally, and install the Remote SSH extension by microsoft locally (see Connect over SSH with Visual Studio Code for more info and ignore all the Azure stuff). If you can SSH to the remote machine, then you just put in the normal address and connect to the remote machine, and it will be as if you were developing locally on your machine. Any terminals you open will open on the remote machine, extensions you install will also run and work there. You will need to add all the extensions you want on the remote machine (including the Julia one). Make sure you also open the project you are working in as a folder, not just opening files, as this will give the best development experience.

If you don’t know how to connect via SSH, you can ask your colleagues. If it is not setup and you are on the same network, it is not too hard to set up.

If you can’t setup all the SSH stuff yourself, you might want to consider using Cloudflare tunnels which lets you set this up without messing around with port forwarding etc ( - I think there is a free version). Using SSH will be a pretty fast development experience even over poor network speeds as you aren’t having to send over video (like teamviewer).

Yes, there is and I belive its called “Try Cloudflare” - it usually works very well. Depending on a setup, one may also take a look at Tailscale, apart to VPN there is also a similar tech to Cloudflare Tunel implemented recently. Good luck.

You may also spin up a container from the JupyterLab Julia docker stack.
→ Multi-arch (linux/amd64 , linux/arm64/v8 ) docker image based on Debian including Julia, JupyterHub, JupyterLab, code-server (aka VS Code), Git, Git LFS, Pandoc, Zsh plus several popular VS Code extensions.

See also JupyterLab + code-server + Julia. There will be GPU-accelerated images soon.

1 Like

Wow, that is really nice!