I successfully configured a development environment on Windows 10 by connecting to a remote Linux machine via SSH, using only Visual Studio Code for editing. This approach avoids WSL and eliminates concerns about VMs and Docker container management on Windows.

Infrastructure

  • 1GB RAM VPS from BuyVM ($3.5/month)
  • 20GB SSD storage with optional 1TB block storage add-on
  • Cloudflare subdomain setup for convenient access

Local Setup

  • Visual Studio Code with Remote SSH extension
  • SSH key authentication configured

Server Configuration

Standard hardening: created a non-root sudo user, installed zsh with oh-my-zsh, disabled root login and password authentication, and installed Docker.

Workflow Benefits

The setup provides a "local development" experience with remote execution. You can access the terminal within Code for git operations, Docker commands, and file editing via remote commands like code ~/.zshrc.

Windows SSH Agent Solution

Initial challenge: Windows lacked a keychain agent. Resolution required running PowerShell commands to enable the SSH agent service automatically, eliminating repeated passphrase prompts.

For equivalent functionality within the remote VM, I recommend installing the keychain Apt package.

Current Use Case

I develop moon-http (a Lua/MoonScript project) on the gaming desktop while runtime environments exist entirely on the remote VPS. For file sharing, I also set up a free personal file host using IBM Cloud Object Storage with a command-line workflow.