This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

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