VS Code Server

VS Code Server configuration and details for Piglet Run.

Overview

Piglet Run includes a pre-configured VS Code Server (code-server) for browser-based development.

Access

Default URL: http://<ip>/code

Configuration

File: /etc/piglet/vscode.yml

vscode:
  enabled: true
  bind_addr: 127.0.0.1:8080
  auth: password
  password: ${VSCODE_PASSWORD}
  cert: false

  # User data directory
  user_data_dir: /home/dba/.local/share/code-server

  # Extensions directory
  extensions_dir: /home/dba/.local/share/code-server/extensions

Pre-installed Extensions

ExtensionDescription
ms-python.pythonPython language support
ms-toolsai.jupyterJupyter notebook support
rust-lang.rust-analyzerRust language support
golang.goGo language support
dbaeumer.vscode-eslintJavaScript linting
esbenp.prettier-vscodeCode formatter
mtxr.sqltoolsSQL tools

Installing Extensions

Via CLI

code-server --install-extension ms-python.python

Via Settings

  1. Open VS Code in browser
  2. Go to Extensions (Ctrl+Shift+X)
  3. Search and install extensions

Settings

Default settings location: /home/dba/.local/share/code-server/User/settings.json

{
  "editor.fontSize": 14,
  "editor.tabSize": 2,
  "editor.formatOnSave": true,
  "terminal.integrated.defaultProfile.linux": "bash",
  "python.defaultInterpreterPath": "/usr/bin/python3",
  "files.autoSave": "afterDelay"
}

Service Management

# Start VS Code server
pig start vscode

# Stop VS Code server
pig stop vscode

# Restart VS Code server
pig restart vscode

# View logs
pig logs vscode

Keyboard Shortcuts

ShortcutAction
Ctrl+Shift+PCommand palette
Ctrl+PQuick open file
Ctrl+Shift+EExplorer
Ctrl+Shift+FSearch
Ctrl+``Terminal
Ctrl+Shift+GGit

Troubleshooting

Connection Issues

# Check service status
systemctl status code-server

# Check port binding
ss -tlnp | grep 8080

# View logs
journalctl -u code-server -f

Extension Issues

# List installed extensions
code-server --list-extensions

# Reinstall extension
code-server --uninstall-extension EXTENSION_ID
code-server --install-extension EXTENSION_ID

See Also