{"id":18454832,"url":"https://github.com/paulbouwer/terraform-dev-docker","last_synced_at":"2026-05-17T02:48:03.124Z","repository":{"id":139108397,"uuid":"85663772","full_name":"paulbouwer/terraform-dev-docker","owner":"paulbouwer","description":"A Docker image to provide a consistent Linux development environment for Terraform development.","archived":false,"fork":false,"pushed_at":"2017-03-21T06:33:33.000Z","size":4,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-10-11T01:37:03.695Z","etag":null,"topics":["development-environment","docker-image","terraform"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/paulbouwer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-03-21T05:44:26.000Z","updated_at":"2020-12-06T23:51:02.000Z","dependencies_parsed_at":null,"dependency_job_id":"af508b15-498b-45fd-afe7-607d41cb38a9","html_url":"https://github.com/paulbouwer/terraform-dev-docker","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/paulbouwer/terraform-dev-docker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paulbouwer%2Fterraform-dev-docker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paulbouwer%2Fterraform-dev-docker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paulbouwer%2Fterraform-dev-docker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paulbouwer%2Fterraform-dev-docker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/paulbouwer","download_url":"https://codeload.github.com/paulbouwer/terraform-dev-docker/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/paulbouwer%2Fterraform-dev-docker/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33125866,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-16T18:38:32.183Z","status":"online","status_checked_at":"2026-05-17T02:00:05.366Z","response_time":107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["development-environment","docker-image","terraform"],"created_at":"2024-11-06T08:06:18.359Z","updated_at":"2026-05-17T02:48:03.074Z","avatar_url":"https://github.com/paulbouwer.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Build Docker image\n\nClone the repo, change into the `terraform-dev-docker` folder and then build the docker image.\n\n```\nC:\\\u003e git clone https://github.com/paulbouwer/terraform-dev-docker .\nC:\\\u003e cd C:\\GitHub\\paulbouwer\\terraform-dev-docker\nC:\\GitHub\\paulbouwer\\terraform-dev-docker\u003e docker build -t terraform-dev:0.5 .\n```\n\n# Use Docker image\n\n\u003e Note: Make sure there is at least 2GB RAM allocated to Docker (if using Docker for Windows/Mac), otherwise you will get link errors when attempting to build go code.\n\n## Create Go workspace\n\nCreate the following Go workspace folders for the terraform project on your Windows Machine.\n\n```\nC:\\projects\\terraform\n.vscode\nbin\npkg\nsrc\n```\n\n## Clone the terraform repo\n\nClone the terraform repo from GitHub into the following specific location in your Go workspace.\n\n```\nC:\\\u003e mkdir C:\\projects\\terraform\\src\\github.com\\hashicorp\\terraform \nC:\\\u003e cd C:\\projects\\terraform\\src\\github.com\\hashicorp\\terraform \nC:\\projects\\terraform\\src\\github.com\\hashicorp\\terraform\u003e git clone https://github.com/hashicorp/terraform.git .\n```\n\n## Start the Docker container\n\nStart the `terraform-dev container`, ensuring that you mount the volumes to your project folder.\n\n```\n$ docker run -it --rm \\\n   -v C:\\projects\\terraform\\src\\github.com\\hashicorp\\terraform:/go/src/github.com/hashicorp/terraform \\\n   -v C:\\projects\\terraform\\pkg:/go/pkg \\\n   -v C:\\projects\\terraform\\bin:/go/bin \\\n   terraform-dev:0.5 bash\n```\n\nThis will give you a `bash` prompt in the docker container in the terraform folder from your cloned terraform repo. \n\n```\nroot@04756c97e24f:/go/src/github.com/hashicorp/terraform# \n```\n\nRun the following to build the packages and binary for Windows. This is necessary so that the Go extension for Visual Studio Code can provide package completion and intellisense.\n\n```\nroot@04756c97e24f:/go/src/github.com/hashicorp/terraform# GOOS=windows go install -v\n```\n\n# Use Visual Studio Code\n\n\u003e This assumes you have `Go` installed. If you do not, download it for your platform from [https://golang.org/dl/](https://golang.org/dl/). \n\n\n## Configure Visual Studio Code Workspace Settings\n\nCopy the `settings.json` file from the `.vscode` folder into your `C:\\Projects\\terraform\\.vscode` folder. \n\nThe `go.gopath` value in the settings file sets up a `GOPATH` for this project. \n\nThe `go.toolsGopath` value in the settings file sets up a location independent of `GOPATH` to install the tools required by this extension.\n\n## Start Visual Studio Code\n\n\u003e If you don't have Visual Studio Code installed, then download it from [https://code.visualstudio.com/Download](https://code.visualstudio.com/Download).\n\nStart Visual Studio Code and open the `C:\\Projects\\terraform\\` folder. \n\nYou can also just do the following from the `C:\\Projects\\terraform\\` folder in your faavourite console.\n\n```\nC:\\projects\\terraform\u003e code .\n```\n\n## Install Go for Visual Studio Code extension\n\n### Install Extension\n\nHit `Ctl-Shift-P` in Visual Studio Code. \n\nType `install extensions` and pick `Extensions: Install Extensions` from the drop down list.\n\nType `go` in the Extensions search box.\n\nClick the **Install** button next to the `Go 0.6.55` extension by **lukehoban**.\ns\nTo see more information about this extension you can visit [Visual Studio Marketplace - \nGo for Visual Studio Code](https://marketplace.visualstudio.com/items?itemName=lukehoban.Go).\n\n### Install Tools\n\nHit `Ctl-Shift-P`, type `go: install` and select `Go: Install Tools` from drop down. You can follow the progress in the Output tab of the Go console in Visual Studio Code.\n\n## Install Fira Code font in Visual Studio Code\n\nProgrammers use a lot of symbols, often encoded with several characters. For the human brain, sequences like -\u003e, \u003c= or := are single logical tokens, even if they take two or three characters on the screen. Your eye spends a non-zero amount of energy to scan, parse and join multiple characters into a single logical one. Ideally, all programming languages should be designed with full-fledged Unicode symbols for operators, but that’s not the case yet.\n\n[Fira Code](https://github.com/tonsky/FiraCode) is an extension of the Fira Mono font containing a set of ligatures for common programming multi-character combinations. This is just a font rendering feature: underlying code remains ASCII-compatible. This helps to read and understand code faster.\n\nDownload and install the fonts. For Windows, install the [OTF](https://github.com/tonsky/FiraCode/tree/master/distr/otf) versions.\n\nThe [instructions](https://github.com/tonsky/FiraCode/wiki/VS-Code-Instructions) for installing Fira Code into Visual Studio Code are simple.\n\nHit `Ctl-Shift-P` in Visual Studio Code.\n\nType `settings` and pick `Preferences: Open User Settings` from the drop down list.\n\nAdd the following into the `settings.json` file, save and you can now enjoy the Fira Code font and ligatures in your code.\n\n```\n\"editor.fontFamily\": \"Fira Code\",\n\"editor.fontSize\": 14,\n\"editor.fontLigatures\": true\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaulbouwer%2Fterraform-dev-docker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpaulbouwer%2Fterraform-dev-docker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpaulbouwer%2Fterraform-dev-docker/lists"}