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

Commitcafacc7

Browse files
committed
update example template
1 parent03c60bf commitcafacc7

File tree

1 file changed

+47
-21
lines changed

1 file changed

+47
-21
lines changed

‎docs/admin/templates/extending-templates/devcontainers.md

Lines changed: 47 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -167,53 +167,79 @@ You can test the Coder dev container integration and features with these starter
167167

168168
<details><summary>Docker-based template (privileged)</summary>
169169

170+
This version uses a Docker-in-Docker image, so it works even if the host doesn’t expose a Docker socket.
171+
170172
```terraform
171-
terraform {
173+
tterraform {
172174
required_providers {
173-
coder = { source = "coder/coder" }
174-
docker = { source = "kreuzwerker/docker" }
175+
coder = {
176+
source = "coder/coder"
177+
}
178+
docker = {
179+
source = "kreuzwerker/docker"
180+
}
175181
}
176182
}
177183
178-
data "coder_workspace" "me" {}
179-
data "coder_workspace_owner" "me" {}
184+
provider "coder" {}
185+
186+
data "coder_workspace" "me" {}
187+
data "coder_workspace_owner" "me" {}
188+
189+
resource "docker_container" "workspace" {
190+
count = data.coder_workspace.me.start_count
191+
image = "codercom/enterprise-base:ubuntu" # includes Coder agent
192+
name = "coder-${data.coder_workspace_owner.me.name}-${lower(data.coder_workspace.me.name)}"
193+
194+
# share host Docker
195+
volumes {
196+
host_path = "/var/run/docker.sock"
197+
container_path = "/var/run/docker.sock"
198+
}
199+
200+
must_run = true # keep container alive
201+
202+
env = [
203+
"CODER_AGENT_TOKEN=${coder_agent.main.token}",
204+
"CODER_AGENT_URL=${data.coder_workspace.me.access_url}" # lets built-in entrypoint phone home
205+
]
206+
}
180207
181208
resource "coder_agent" "main" {
182209
os = "linux"
183210
arch = "amd64"
184-
185-
startup_script_behavior = "blocking"
186-
startup_script = "sudo service docker start"
187-
shutdown_script = "sudo service docker stop"
188211
}
189212
190-
module "devcontainers_cli" {
213+
# install node
214+
module "nodejs" {
191215
count = data.coder_workspace.me.start_count
192-
source = "dev.registry.coder.com/modules/devcontainers-cli/coder"
216+
source = "dev.registry.coder.com/modules/nodejs/coder"
193217
agent_id = coder_agent.main.id
194218
}
195219
220+
module "devcontainers_cli" {
221+
count = data.coder_workspace.me.start_count
222+
source = "dev.registry.coder.com/modules/devcontainers-cli/coder"
223+
agent_id = coder_agent.main.id
224+
depends_on = [module.nodejs] # npm first
225+
}
226+
227+
# clone a repo
196228
module "git_clone" {
197229
count = data.coder_workspace.me.start_count
198230
source = "dev.registry.coder.com/modules/git-clone/coder"
199231
agent_id = coder_agent.main.id
200-
url = "https://github.com/example/project.git"
201-
base_dir= "/home/coder/project"
232+
url = "https://github.com/devcontainers/template-starter.git"
233+
base_dir = "/home/coder/project"
202234
}
203235
236+
# launch the Dev Container
204237
resource "coder_devcontainer" "project" {
205238
count = data.coder_workspace.me.start_count
206239
agent_id = coder_agent.main.id
207240
workspace_folder = "/home/coder/project/${module.git_clone[0].folder_name}"
208241
depends_on = [module.git_clone]
209242
}
210-
211-
resource "docker_container" "workspace" {
212-
count = data.coder_workspace.me.start_count
213-
image = "codercom/enterprise-node:ubuntu"
214-
name = "coder-${data.coder_workspace_owner.me.name}-${lower(data.coder_workspace.me.name)}"
215-
privileged = true # or mount /var/run/docker.sock
216-
}
217243
```
218244

219245
</details>
@@ -249,7 +275,7 @@ module "git_clone" {
249275
count = data.coder_workspace.me.start_count
250276
source = "dev.registry.coder.com/modules/git-clone/coder"
251277
agent_id = coder_agent.main.id
252-
url = "https://github.com/example/project.git"
278+
url = "https://github.com/coder/coder.git"
253279
base_dir = "/home/coder/project"
254280
}
255281

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp