devcontainers / devcontainers/cli

when using dockerComposeFile prebuilds are ignored

未关闭
#867 2 条评论 0 个 reaction 已指派 1 人 已被 @chrmarti 认领 在 GitHub 查看
bug
主要语言
TypeScript
星标
3k
派生
457
平均合并
13 小时 17 分钟
30 天内合并 PR
6

描述

We have the following `devcontainers.json` file at `.devcontainers/flask/devcontainers.json`:
```
{
"name": "flask",
"dockerComposeFile": [
"../../docker-compose.app.yaml",
"../docker-compose.app.dev.yaml"
],
"service": "flask",
"workspaceFolder": "/home/jan",
"features": {},
"customizations": {
"vscode": {
"settings": {
...
},
"extensions": [
...
]
}
}
}
```

Running `devcontainer up --workspace-folder . --config .devcontainer/flask/devcontainer.json` works fine, it builds the image and stands up the docker compose service.

I want to utilize prebuilding with our docker compose stack so I take the resulting built images and push them to our repository. If anyone pulls those images and runs `devcontainer up --workspace-folder . --config .devcontainer/flask/devcontainer.json` it rebuilds the entire image from scratch

If in the devcontainers.json I use the `image` field then it doesn't rebuild but there's no good way to use something like VS Code's `> Reopen in Container` since it doesn't know it part of the docker compose stack.

Does devcontainers support using prebuilt images with docker compose files? Is there somethings special I need to do to get it to recognize the image is fully built or to point directly at the cache?

To me it seems like it seems to be running `docker compose build` instead of `docker compose up` when running `devcontainers up`. If I run `docker compose up` myself and then attach VS Code it seems to work as intended.

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。