Skip to content

iyaki/devcontainer-templates

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dev Container Templates

Custom Dev Container Templates for specialized development environments, hosted on GitHub Container Registry. This repository follows the Dev Container Template distribution specification.

Available Templates

OpenCode Ralph Template (opencode-ralph)

A comprehensive development container template for AI-assisted development with OpenCode and Ralph Loops. This template provides:

  • Universal Linux base image for broad compatibility
  • OpenCode - AI coding assistant with chat, indexing, and memory features
  • Ralph - Agentic loop-based development workflows
  • Pre-configured tools - Ready for Spec-Driven Development

Supported Platforms: Python, Node.js, JavaScript, TypeScript, C++, Java, C#, .NET Core, PHP, Go, Ruby, Conda, and more.

Documentation: OpenCode Ralph Template README

Using Templates

Templates are designed to be used by Dev Container supporting tools like VS Code Dev Containers and GitHub Codespaces.

To use a template from this repository:

ghcr.io/iyaki/devcontainer-templates/opencode-ralph:latest

Template Options

Templates can declare customization options in their devcontainer-template.json file. The syntax for the options property can be found in the devcontainer Template json properties reference.

Implementing tools use these options to provide configuration UI when creating dev containers. See option resolution example for details.

Distribution and Publishing

Note: Allow GitHub Actions to create and approve pull requests should be enabled in the repository's Settings > Actions > General > Workflow permissions for auto-generation of template documentation.

Versioning

Templates are individually versioned by the version attribute in each template's devcontainer-template.json. Templates follow semantic versioning specification. More details can be found in the Dev Container Template specification.

Publishing to GHCR

This repository uses a GitHub Action workflow to automatically publish templates to GitHub Container Registry (GHCR).

Templates are published with the <owner>/<repo> namespace prefix:

ghcr.io/iyaki/devcontainer-templates/opencode-ralph:latest

A metadata package is also published at ghcr.io/iyaki/devcontainer-templates containing information for template discovery tools.

Making Templates Public

By default, OCI artifacts in GHCR are private. To make templates publicly accessible:

  1. Navigate to the template's package settings page:

    https://github.com/users/iyaki/packages/container/devcontainer-templates%2Fopencode-ralph/settings
    
  2. Set visibility to public

Adding to Public Index

To make templates discoverable by tools like VS Code and GitHub Codespaces, add them to the public index:

  1. Open a PR at devcontainers/devcontainers.github.io
  2. Modify collection-index.yml

Development and Testing

Testing Templates

This repository includes a GitHub Action workflow for automated testing. Each template has a corresponding test script in the test folder.

To run tests locally:

./.github/actions/smoke-test/build.sh ${TEMPLATE-ID}
./.github/actions/smoke-test/test.sh ${TEMPLATE-ID}

Example:

./.github/actions/smoke-test/build.sh opencode-ralph
./.github/actions/smoke-test/test.sh opencode-ralph

Documentation Generation

Template documentation is automatically generated by a GitHub Action workflow. The README.md for each template is created from its devcontainer-template.json and NOTES.md files.

Contributing

Contributions are welcome! Please ensure:

License

See LICENSE for details.

Resources

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages