Movatterモバイル変換


[0]ホーム

URL:


AI-native Development

Coder powers secure, scalable development across key industries — automotive, finance, government, and technology — enabling faster builds, tighter compliance, and seamless AI adoption in enterprise-grade cloud environments.

Image Management

While Coder provides examplebase container images forworkspaces, it's often best to create custom images that matches the needs ofyour users. This document serves a guide to operational maturity with some bestpractices around managing workspaces images for Coder.

  1. Create a minimal base image
  2. Create golden image(s) with standard tooling
  3. Allow developers to bring their own images and customizations with DevContainers

An image is just one of the many properties defined within the template.Templates can pull images from a public image registry (e.g. Docker Hub) or aninternal one, thanks to Terraform.

Create a minimal base image

While you may not use this directly in Coder templates, it's useful to have aminimal base image is a small image that contains only the necessarydependencies to work in your network and work with Coder. Here are some thingsto consider:

  • curl,wget, orbusybox is required to download and runthe agent
  • git is recommended so developers can clone repositories
  • If the Coder server is using a certificate from an internal certificateauthority (CA), you'll need to add or mount these into your image
  • Other generic utilities that will be required by all users, such asssh,docker,bash,jq, and/or internal tooling
  • Consider creating (and starting the container with) a non-root user

See Coder'sexample base imagefor reference.

Create general-purpose golden image(s) with standard tooling

It's often practical to have a few golden images that contain standard toolingfor developers. These images should contain a number of languages (e.g. Python,Java, TypeScript), IDEs (VS Code, JetBrains, PyCharm), and other tools (e.g.docker). Unlike project-specific images (which are also important), generalpurpose images are great for:

  • Scripting: Developers may just want to hop in a Coder workspace to runbasic scripts or queries.
  • Day 1 Onboarding: New developers can quickly get started with a familiarenvironment without having to browse through (or create) an image
  • Basic Projects: Developers can use these images for simple projects thatdon't require any specific tooling outside of the standard libraries. As theproject gets more complex, its best to move to a project-specific image.
  • "Golden Path" Projects: If your developer platform offers specific techstacks and types of projects, the golden image can be a good starting pointfor those projects.

This is often referred to as a "sandbox" or "kitchen sink" image. Since largemulti-purpose container images can quickly become difficult to maintain, it'simportant to keep the number of general-purpose images to a minimum (2-3 inmost cases) with a well-defined scope.

Examples:

Allow developers to bring their own images and customizations with Dev Containers

While golden images are great for general use cases, developers will often needspecific tooling for their projects. TheDev Containerspecification allows developers to define their projects dependencies within adevcontainer.json in their Git repository.

On this page

[8]ページ先頭

©2009-2025 Movatter.jp