Member-only story
How to Set Up code-server daemon on Ubuntu for Deep Learning: Root Access, Docker, systemd, NGINX Reverse-Proxy, and More

A lot of us love using VSCode on our workstations but sometimes our personal laptops aren’t the computers we want to use.
Often times high-powered GPU machines are given to us as an address to a remote server and all the hassle with ssh, vim, and being stuck in a terminal shell can become annoying.
This is a tutorial on how to get a web version of VSCode running on whatever remote server that you have access to.
At the Extra: Reverse-Proxy with Nginx section at the end, I also talk about getting around IP white-list restrictions with reverse-proxy with a general introduction to reverse-proxying with Nginx.
Root Access? Docker.
You first want to figure out if you want to give this VSCode instance root access to your server. If you don’t want to give it root access and have it live separately from your actual server, the easiest way to do this is through Docker. The implementation for Docker can be found way below this article in the Extra 1: Docker Installation section.
A Step-by-Step Guide: Setup code-server as daemon
Step 1: Install code-server
Make a directory to separate this work from other directories:
mkdir ~/code-server
cd ~/code-server
and run this to start the installation process:
curl -fsSL https://code-server.dev/install.sh | s
and you should already be able to run code-server locally:
code-server
with an output looking something like this:
ubuntu@server-1312:~/myname$ code-server
[2021-06-23T03:54:38.221Z] info code-server 3.10.2 387b12ef4ca404ffd39d84834e1f0776e9e3c005
[2021-06-23T03:54:38.222Z] info Using user-data-dir ~/.local/share/code-server
[2021-06-23T03:54:38.237Z] info Using config file ~/.config/code-server/config.yaml
[2021-06-23T03:54:38.237Z] info HTTP server listening on http://127.0.0.1:8080
[2021-06-23T03:54:38.237Z] info - Authentication is enabled…