131 lines
3.7 KiB
Markdown
131 lines
3.7 KiB
Markdown
---
|
|
display_name: code-server
|
|
description: VS Code in the browser
|
|
icon: ../../../../.icons/code.svg
|
|
verified: true
|
|
tags: [ide, web, code-server]
|
|
---
|
|
|
|
# code-server
|
|
|
|
Automatically install [code-server](https://github.com/coder/code-server) in a workspace, create an app to access it via the dashboard, install extensions, and pre-configure editor settings.
|
|
|
|
```tf
|
|
module "code-server" {
|
|
count = data.coder_workspace.me.start_count
|
|
source = "registry.coder.com/coder/code-server/coder"
|
|
version = "1.4.3"
|
|
agent_id = coder_agent.example.id
|
|
}
|
|
```
|
|
|
|

|
|
|
|
## Examples
|
|
|
|
### Pin Versions
|
|
|
|
```tf
|
|
module "code-server" {
|
|
count = data.coder_workspace.me.start_count
|
|
source = "registry.coder.com/coder/code-server/coder"
|
|
version = "1.4.3"
|
|
agent_id = coder_agent.example.id
|
|
install_version = "4.106.3"
|
|
}
|
|
```
|
|
|
|
### Pre-install Extensions
|
|
|
|
Install the Dracula theme from [OpenVSX](https://open-vsx.org/):
|
|
|
|
```tf
|
|
module "code-server" {
|
|
count = data.coder_workspace.me.start_count
|
|
source = "registry.coder.com/coder/code-server/coder"
|
|
version = "1.4.3"
|
|
agent_id = coder_agent.example.id
|
|
extensions = [
|
|
"dracula-theme.theme-dracula"
|
|
]
|
|
}
|
|
```
|
|
|
|
Enter the `<author>.<name>` into the extensions array and code-server will automatically install on start.
|
|
|
|
### Pre-configure Settings
|
|
|
|
Configure VS Code's [settings.json](https://code.visualstudio.com/docs/getstarted/settings#_settings-json-file) file:
|
|
|
|
```tf
|
|
module "code-server" {
|
|
count = data.coder_workspace.me.start_count
|
|
source = "registry.coder.com/coder/code-server/coder"
|
|
version = "1.4.3"
|
|
agent_id = coder_agent.example.id
|
|
extensions = ["dracula-theme.theme-dracula"]
|
|
settings = {
|
|
"workbench.colorTheme" = "Dracula"
|
|
}
|
|
}
|
|
```
|
|
|
|
### Install multiple extensions
|
|
|
|
Just run code-server in the background, don't fetch it from GitHub:
|
|
|
|
```tf
|
|
module "code-server" {
|
|
count = data.coder_workspace.me.start_count
|
|
source = "registry.coder.com/coder/code-server/coder"
|
|
version = "1.4.3"
|
|
agent_id = coder_agent.example.id
|
|
extensions = ["dracula-theme.theme-dracula", "ms-azuretools.vscode-docker"]
|
|
}
|
|
```
|
|
|
|
### Pass Additional Arguments
|
|
|
|
You can pass additional command-line arguments to code-server using the `additional_args` variable. For example, to disable workspace trust:
|
|
|
|
```tf
|
|
module "code-server" {
|
|
count = data.coder_workspace.me.start_count
|
|
source = "registry.coder.com/coder/code-server/coder"
|
|
version = "1.4.3"
|
|
agent_id = coder_agent.example.id
|
|
additional_args = "--disable-workspace-trust"
|
|
}
|
|
```
|
|
|
|
### Offline and Use Cached Modes
|
|
|
|
By default the module looks for code-server at `/tmp/code-server` but this can be changed with `install_prefix`.
|
|
|
|
Run an existing copy of code-server if found, otherwise download from GitHub:
|
|
|
|
```tf
|
|
module "code-server" {
|
|
count = data.coder_workspace.me.start_count
|
|
source = "registry.coder.com/coder/code-server/coder"
|
|
version = "1.4.3"
|
|
agent_id = coder_agent.example.id
|
|
use_cached = true
|
|
extensions = ["dracula-theme.theme-dracula", "ms-azuretools.vscode-docker"]
|
|
}
|
|
```
|
|
|
|
Just run code-server in the background, don't fetch it from GitHub:
|
|
|
|
```tf
|
|
module "code-server" {
|
|
count = data.coder_workspace.me.start_count
|
|
source = "registry.coder.com/coder/code-server/coder"
|
|
version = "1.4.3"
|
|
agent_id = coder_agent.example.id
|
|
offline = true
|
|
}
|
|
```
|
|
|
|
Some of the key differences between code-server and [VS Code Web](https://registry.coder.com/modules/coder/vscode-web) are listed in [docs](https://coder.com/docs/user-guides/workspace-access/code-server#differences-between-code-server-and-vs-code-web).
|