Skip to content

schubergphilis/devcontainer

Repository files navigation

Release Status

devcontainer

This project defines a container image to be used as a development environment inside Visual Studio Code through the Remote Dev Container extension.

Table of Contents

What is devcontainer?

Devcontainer is a standard to define remote development environments using containers and how editors and IDE's should integrate them. The standard is described here.

How can I use it?

First off, you need to use a text editor or IDE who supports devcontainers. The most famous one is Visual Studio Code with the Dev Containers extension installed.

Your project should also define a .devcontainer/devcontainer.json configuration that is loaded by the extension and then the remote environment is built, started and attached to.

You can see the grawsp project as an example. You can also read more about how to setup your own development container in Visual Studio Code here.

Examples

Example of using this image directly in your .devcontainer/devcontainer.json:

{
    "image": "ghcr.io/schubergphilis/devcontainer:1.2.0"
}

You can also use it as a base image in your Dockerfile:

FROM ghcr.io/schubergphilis/devcontainer:1.2.0

Installed Software

The image is built on Ubuntu 24.04 (Noble) and bundles the following tools. All binaries are verified with SHA256 checksums at build time.

Language Version Managers

Tool Version Description
nvm 0.40.4 Node.js version manager
pyenv 2.6.27 Python version manager
rbenv + ruby-build latest Ruby version manager
goenv 3.0.1 Go version manager
rustup latest Rust toolchain installer (no default toolchain)
tenv 4.10.1 Version manager for Terraform, OpenTofu, Terragrunt, and Atmos

Infrastructure & IaC Tools

Tool Version Description
tenv 4.10.1 Multi-version manager for Terraform / OpenTofu ecosystems
terraform-docs 0.22.0 Generate documentation from Terraform modules
tflint 0.61.0 Terraform linter
cosign 3.0.6 Container image signing and verification

Developer Tools

Tool Version Description
task 3.50.0 Task runner / build tool (Taskfile)
uv 0.11.7 Fast Python package and project manager
hadolint 2.14.0 Dockerfile linter
checkov 3.2.521 Infrastructure-as-code security scanner
pre-commit 4.6.0 Git pre-commit hook framework
Claude CLI 2.1.104 Anthropic's Claude Code CLI
rtk 0.38.0 RTK AI CLI
specify-cli 0.7.3 Specification toolkit
sbp-skills latest Schuberg Philis skill extensions for Claude Code
pipenv 2026.6.1 Python dependency management tool
poetry 2.4.0 Python packaging and dependency manager

Contributing

Contributions are welcome. Please open a pull request or file an issue at schubergphilis/devcontainer.

When updating tool versions in src/Dockerfile, always update the corresponding ARG/ENV version variable and the SHA256 checksum together. See the Key conventions section in CLAUDE.md for further guidance on how this project is structured.

License

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this
file except in compliance with the License. You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under
the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the specific language governing
permissions and limitations under the License.

About

A container image to be used as a remote development environment inside Visual Studio Code through the Remote Dev Container extension.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors