Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitfd7d998

Browse files
committed
add: persistence & coder images
1 parentb0fe9bc commitfd7d998

File tree

2 files changed

+89
-3
lines changed

2 files changed

+89
-3
lines changed

‎examples/templates/kubernetes-multi-service/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,3 +72,7 @@ roleRef:
7272

7373
Then start the Coder host with `serviceAccountName:coder` in the pod spec.
7474

75+
## Persistence
76+
77+
Each container in this Kubernetes pod example will have their `/home/coder` directory
78+
persisted via the attached PersistentVolumeClaim.

‎examples/templates/kubernetes-multi-service/main.tf

Lines changed: 85 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,12 @@ variable "workspaces_namespace" {
3232
default="coder-workspaces"
3333
}
3434

35+
variable"disk_size" {
36+
type=number
37+
description="Disk size (__ GB)"
38+
default=10
39+
}
40+
3541
provider"kubernetes" {
3642
# Authenticate via ~/.kube/config or a Coder-specific ServiceAccount, depending on admin preferences
3743
config_path=var.use_kubeconfig==true?"~/.kube/config":null
@@ -63,7 +69,7 @@ resource "kubernetes_pod" "main" {
6369
spec {
6470
container {
6571
name="go"
66-
image="mcr.microsoft.com/vscode/devcontainers/go:1"
72+
image="codercom/enterprise-golang:ubuntu"
6773
command=["sh","-c",coder_agent.go.init_script]
6874
security_context {
6975
run_as_user="1000"
@@ -72,10 +78,20 @@ resource "kubernetes_pod" "main" {
7278
name="CODER_AGENT_TOKEN"
7379
value=coder_agent.go.token
7480
}
81+
volume_mount {
82+
mount_path="/home/coder"
83+
name="go-home-directory"
84+
}
85+
}
86+
volume {
87+
name="go-home-directory"
88+
persistent_volume_claim {
89+
claim_name=kubernetes_persistent_volume_claim.go-home-directory.metadata.0.name
90+
}
7591
}
7692
container {
7793
name="java"
78-
image="mcr.microsoft.com/vscode/devcontainers/java"
94+
image="codercom/enterprise-java:ubuntu"
7995
command=["sh","-c",coder_agent.java.init_script]
8096
security_context {
8197
run_as_user="1000"
@@ -84,10 +100,20 @@ resource "kubernetes_pod" "main" {
84100
name="CODER_AGENT_TOKEN"
85101
value=coder_agent.java.token
86102
}
103+
volume_mount {
104+
mount_path="/home/coder"
105+
name="java-home-directory"
106+
}
107+
}
108+
volume {
109+
name="java-home-directory"
110+
persistent_volume_claim {
111+
claim_name=kubernetes_persistent_volume_claim.java-home-directory.metadata.0.name
112+
}
87113
}
88114
container {
89115
name="ubuntu"
90-
image="mcr.microsoft.com/vscode/devcontainers/base:ubuntu"
116+
image="codercom/enterprise-base:ubuntu"
91117
command=["sh","-c",coder_agent.ubuntu.init_script]
92118
security_context {
93119
run_as_user="1000"
@@ -96,6 +122,62 @@ resource "kubernetes_pod" "main" {
96122
name="CODER_AGENT_TOKEN"
97123
value=coder_agent.ubuntu.token
98124
}
125+
volume_mount {
126+
mount_path="/home/coder"
127+
name="ubuntu-home-directory"
128+
}
129+
}
130+
volume {
131+
name="ubuntu-home-directory"
132+
persistent_volume_claim {
133+
claim_name=kubernetes_persistent_volume_claim.ubuntu-home-directory.metadata.0.name
134+
}
135+
}
136+
137+
}
138+
}
139+
140+
resource"kubernetes_persistent_volume_claim""go-home-directory" {
141+
metadata {
142+
name="home-coder-go-${data.coder_workspace.me.owner}-${data.coder_workspace.me.name}"
143+
namespace=var.workspaces_namespace
144+
}
145+
spec {
146+
access_modes=["ReadWriteOnce"]
147+
resources {
148+
requests={
149+
storage="${var.disk_size}Gi"
150+
}
151+
}
152+
}
153+
}
154+
155+
resource"kubernetes_persistent_volume_claim""java-home-directory" {
156+
metadata {
157+
name="home-coder-java-${data.coder_workspace.me.owner}-${data.coder_workspace.me.name}"
158+
namespace=var.workspaces_namespace
159+
}
160+
spec {
161+
access_modes=["ReadWriteOnce"]
162+
resources {
163+
requests={
164+
storage="${var.disk_size}Gi"
165+
}
166+
}
167+
}
168+
}
169+
170+
resource"kubernetes_persistent_volume_claim""ubuntu-home-directory" {
171+
metadata {
172+
name="home-coder-ubuntu-${data.coder_workspace.me.owner}-${data.coder_workspace.me.name}"
173+
namespace=var.workspaces_namespace
174+
}
175+
spec {
176+
access_modes=["ReadWriteOnce"]
177+
resources {
178+
requests={
179+
storage="${var.disk_size}Gi"
180+
}
99181
}
100182
}
101183
}

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp