Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Investigate feasibility of docker-compose support #135

Closed
Tracked by #132
dannykopping opened this issue Apr 23, 2024 · 5 comments
Closed
Tracked by #132

Investigate feasibility of docker-compose support #135

dannykopping opened this issue Apr 23, 2024 · 5 comments
Assignees
Labels
spike Investigation to prove feasibility or validate an idea

Comments

@dannykopping
Copy link
Contributor

dannykopping commented Apr 23, 2024

https://containers.dev/implementors/json_reference/#compose-specific

This may not make it into the 1.0 release if we find that it doesn't fit the envbuilder model or requires lots of refactoring.

@dannykopping dannykopping added the spike Investigation to prove feasibility or validate an idea label Apr 23, 2024
@shiipou
Copy link

shiipou commented May 12, 2024

Oh cool to see that issue, that can totally upgrade my experience to use it.

I hope my usecase can help :

I have created a kubernetes template in coder v2 that use envbuilder and provide a DinD (Docker in Docker) sidecar.
That allow me to create my container using the .devcontainer specifications and I can start a database aside to use it in the workspace project.

Using the dockerComposeFile can allow to use the DinD sidecar to start the workspace.

Maybe that can be something like this for the implementation.

@johnstcn johnstcn assigned johnstcn and unassigned dannykopping May 20, 2024
@johnstcn
Copy link
Member

johnstcn commented May 28, 2024

A compose-file is not just a single container, but contains many of the following:

  • services
  • networks
  • volumes
  • configs
  • secrets

Envbuilder currently relies on GoogleContainerTools/kaniko to build images, and kaniko has no plans to support compose.

In order to support compose, we would, at a minimum, need to either:

a) Switch to a different backend that supports the compose spec, or
b) Implement the compose spec ourselves and build any required images on demand

The tricky thing here is that kaniko in its current incarnation only supports building one image at a time, so we would need to separate the 'build' process from the 'run' process.

@bpmct
Copy link
Member

bpmct commented May 31, 2024

Yeah, let's consider this out of scope for the v1.0 release and pick it back up depending on feedback

@mafredri
Copy link
Member

mafredri commented Jun 1, 2024

Should we close this @bpmct if the investigation is complete?

@bpmct
Copy link
Member

bpmct commented Jun 2, 2024

Sure :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
spike Investigation to prove feasibility or validate an idea
Projects
None yet
Development

No branches or pull requests

6 participants