Files
docker_stack/vs-code-server/template/main.tf

61 lines
1.3 KiB
HCL
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# main.tf (無 Docker provider 版,單容器 VSCode)
terraform {
required_providers {
coder = {
source = "coder/coder"
}
}
}
provider "coder" {}
# 基本 workspace 資料
data "coder_workspace" "me" {}
# 取得使用者名稱
data "coder_workspace_owner" "me" {}
# 自動建立使用者 config 目錄與預設設定(使用 dir無 shell
resource "coder_agent" "main" {
os = "linux"
arch = "amd64"
dir = "/projects/${data.coder_workspace_owner.me.name}"
# 預設 VSCode 設定檔
env = {
CODE_SERVER_CONFIG = <<EOF
{
"workbench.colorTheme": "Default Dark+"
}
EOF
}
# 登出自動存檔
shutdown_script = <<EOF
#!/bin/bash
code-server --sync-settings || true
echo "Saved for ${data.coder_workspace_owner.me.name}"
EOF
}
# 磁碟監控(使用 coder_metadata 資源)
resource "coder_metadata" "disk_usage" {
resource_id = coder_agent.main.id
item {
key = "disk"
value = "10GB"
}
}
# VSCode Web App連到 Coder server 的 code-server
resource "coder_app" "code-server" {
agent_id = coder_agent.main.id
slug = "vscode"
display_name = "VSCode Web"
url = "http://localhost:6800/?folder=/projects/${data.coder_workspace_owner.me.name}"
icon = "/icon/code.svg"
subdomain = true
}