Skip to content

Commit

Permalink
example: added docker local workspace (#1025)
Browse files Browse the repository at this point in the history
  • Loading branch information
ntimo committed Apr 18, 2022
1 parent 48a6cd9 commit 9faa39a
Show file tree
Hide file tree
Showing 2 changed files with 56 additions and 0 deletions.
5 changes: 5 additions & 0 deletions examples/docker-local/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
name: Develop in Docker on the same host that runs Coder
description: Get started with Linux development using a Docker container locally as workspace provider.
tags: [local, docker]
---
51 changes: 51 additions & 0 deletions examples/docker-local/main.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
terraform {
required_providers {
coder = {
source = "coder/coder"
version = "~> 0.3.1"
}
docker = {
source = "kreuzwerker/docker"
version = "~> 2.16.0"
}
}
}

provider "docker" {
host = "unix:///var/run/docker.sock"
}

data "coder_workspace" "me" {
}

resource "coder_agent" "dev" {
arch = "amd64"
os = "linux"
}

variable "docker_image" {
description = "What docker image would you like to use for your workspace?"
default = "codercom/enterprise-base:ubuntu"
validation {
condition = contains(["codercom/enterprise-base:ubuntu", "codercom/enterprise-node:ubuntu", "codercom/enterprise-java:ubuntu"], var.docker_image)
error_message = "Invalid Docker Image!"
}
}

resource "docker_volume" "coder_volume" {
name = "coder-${data.coder_workspace.me.owner}-${data.coder_workspace.me.name}-root"
}

resource "docker_container" "workspace" {
count = data.coder_workspace.me.start_count
image = var.docker_image
name = "coder-${data.coder_workspace.me.owner}-${data.coder_workspace.me.name}-root"
dns = ["1.1.1.1"]
command = ["sh", "-c", coder_agent.dev.init_script]
env = ["CODER_TOKEN=${coder_agent.dev.token}"]
volumes {
container_path = "/home/coder/"
volume_name = docker_volume.coder_volume.name
read_only = false
}
}

0 comments on commit 9faa39a

Please sign in to comment.