Running VScode Online on Neth Server

i came accross this recently https://github.com/cdr/code-server

so i am wondering what mayhem can be caused installing and running this tool here on Nethserver. most of the install instructions seem to be automated scripts, not sure how that would and can be handled with reverse proxy etc inside ntehsevr

3 Likes

Easy to answer: It shouldn’t!

This seems to be one of those things better running dedicated on a VPS or a dedicated VM…

1 Like

Thats veryyyyyyyyyyyyyy cool!

I am concerned about… requests.
VSCode is a nice editor, I can relate, but… Any Scintilla-based editor is not that picky about core number…

It basically runs on Nethserver…the script just installs the RPM even if CentOS 7 is not supported and it worked in first tests.

Install VSCode:

curl -fsSL https://code-server.dev/install.sh | sh

Add vscode user to not use root for better security:

adduser vscode

Set a password for the vscode user:

passwd vscode

Enable and start service for the vscode user:

systemctl enable --now code-server@vscode

Edit /home/vscode/.config/code-server/config.yaml to get/edit the login password and maybe edit port (8080 is used by tomcat too)

Restart service if you changed something in config.yaml:

systemctl restart code-server@vscode

Create name reverse proxy to localhost:<Used Port> like localhost:8080, you need to enable websocket (top new feature!!!) in the advanced settings. To force SSL enable “Require SSL encrypted connection”.

I added the host “rptest.local” to my local DNS server, pointing to the Neth IP so clients can reach it for testing.

Browse to the created reverse proxy domain (https://rptest.local in this example) and login with the password from /home/vscode/.config/code-server/config.yaml.

4 Likes

i dotn see this

I updated my post, the yaml file is created on first service start, please also check the docs if you encounter problems…

i think i am lost in this place

I updated the howto with a screenshot…

EDIT:

Added a more secure way to run it as user.

what local dns server are you using in your instance,
just for educational purpose, as i wanted to have something similar in my local environment

I use another Nethserver as DNS server. For testing from a client you can use the clients hosts file too so you don’t need to touch your DNS server.

Windows client:

Linux client:

https://www.makeuseof.com/tag/modify-manage-hosts-file-linux/

In my home network I use a NethServer as DNS/DHCP server and several client/server VMs for testing so it’s easier to configure it on the server instead of managing hosts files on every client.

so on the other Nethserver you just edit host files

No, there are two ways, configuring the DNS server OR use the clients hosts file.

I use the DNS server configuration method but for just a quick test I recommend to edit the hosts file on the client.
With both methods the client is able to resolve the IP out of a name, so you can test a named reverse proxy in the client browser.

EDIT:

I think I misunderstood…
On the other Nethserver I use the server manager (System/DNS) to add the entries and the template system writes the /etc/hosts file.

1 Like

success

1 Like

how can we force use ssl in this case.

Reverse proxy?

1 Like

?? not getting you

SSL should be already required in reverse proxy settings (“Require SSL encrypted connection”), see the screenshot above.

EDIT:

I updated the howto with an explanation how to force SSL…

2 Likes

i think we now have a very nice and beautiful online editor, i beleive the files can be backep up via rsync

2 Likes

Thank @mrmarkuz

2 Likes