devcontainers / devcontainers/cli

Dev container features seem to get reinstalled on a prebuild

Open
#342 4 comments 1 reaction 1 assignee Claimed by @chrmarti View on GitHub
info-needed
Dominant language
TypeScript
Stars
3k
Forks
457
Avg merge
13h 17m
Merged PRs (30d)
6

Description

I'm not sure when this started happened but I'm noticing that if I:
- Prebuild an image using the latest version of `devcontainer`
- Reference the output image in my Dockerfile
- Rebuild the container using the latest version of the dev containers extension

I'm seeing my features, which should already be installed at the given version, go through the install process again. The purpose of prebuilding images is to avoid this downtime, so the fact they are not being skipped seems to defeat the entire purpose of that step.

One of the `features` configs where I'm seeing this:

```
"features": {
"docker-from-docker": "latest",
"kubectl-helm-minikube": "latest",
"git": "system",
"git-lfs": "3.1.4",
"ghcr.io/devcontainers/features/github-cli:1": {}
},
```

`devcontainer` version: 0.26.1
Dev containers version: v0.266.1

Note that if I rebuild the image without cache, I'm not seeing this behavior. It loads very quickly. It only seems to be the first time I use a new image.

The build pipeline we are using:
- Build a base image using docker
- Build a prebuild using `devcontainer`
- Update dev container configs to point to the output from `devcontainer`

Prebuild
Screen Shot 2022-12-21 at 3 46 55 PM

First time opening dev container
Screen Shot 2022-12-21 at 3 48 48 PM

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.