Sign inSign up

kevintijssen/devcontainer-base

By kevintijssen

•Updated 3 days ago

Image
0

6.3K

kevintijssen/devcontainer-base repository overview

⁠🚀 Development Container

This repository provides a Dev Container setup for Kubernetes, Golang, and cloud-native development using VS Code Dev Containers. It includes various CLI tools, automation features, and Kubernetes utilities.

⁠📦 Container Configuration

The container is built using a multi-stage Dockerfile and a Dev Container configuration (devcontainer.json).

⁠🔨 Base Images:
  1. Go 1.23.6 (Builder stage)
    • Installs Jsonnet tools and jsonnet-bundler.
  2. Microsoft DevContainers Python 3.13 (Final image)
    • Includes Python environment with DevContainer optimizations.
⁠🛠 Installed Tools
⁠✅ From Dockerfile:
  • Jsonnet (jsonnet, jsonnet-lint, jsonnetfmt) – JSON templating
  • Jsonnet Bundler (jb) – Package manager for Jsonnet
  • Git & Entr – Version control and file watching
  • Kubernetes alias (alias k=kubectl)
⁠✅ From DevContainer Features:
FeatureDescription
argo-cdGitOps continuous delivery tool.
chezmoiDotfile manager for managing configurations.
CiliumeBPF-based networking, security, and observability.
docker-in-dockerEnables running Docker inside the container.
go-taskTask runner for automation.
gumCommand-line tool for interactive scripts.
jq & yqCLI tools for processing JSON (jq) and YAML (yq).
kindKubernetes IN Docker (KinD) for local clusters.
k3dLightweight Kubernetes (K3s) cluster in Docker.
k9sTerminal UI for managing Kubernetes clusters.
kubectl, Helm, MinikubeKubernetes CLI tools. (Minikube disabled.)
pre-commitFramework for managing pre-commit hooks.
skaffoldContinuous development and deployment for Kubernetes.
talosctlCommand-line tool for managing Talos clusters.

⁠🔄 Automated Builds & Updates

The container image is automatically built and pushed using GitHub Actions every Sunday. This ensures that all dependencies, tools, and base images stay up to date.

⁠⚙️ CI/CD Workflow:
  • GitHub Actions triggers a weekly build.
  • The updated image is pushed to Docker Hub under the name kevintijssen/devcontainer-base.

⁠🔧 Customization

  • Modify .devcontainer/devcontainer.json to add/remove features.
  • Update the Dockerfile to install additional tools or dependencies.

⁠📝 Notes

  • k is aliased to kubectl for convenience.
  • The Go builder stage ensures Jsonnet tools are available without bloating the final image.

Tag summary

Content type

Image

Digest

sha256:75bd4f144…

Size

1.1 GB

Last updated

3 days ago

docker pull kevintijssen/devcontainer-base