
DRA imagem criada pelo VSCode só executa o comando CMD quando pressiono o botão Executar na UI do Docker Desktop.
Olá pessoal,
Estou brincando com uma imagem Drools junto com Docker Desktop e VSCode.
Meu devcontainer.json
arquivo se parece com o seguinte:
{
"name": "Existing Dockerfile",
"build": {
// Sets the run context to one level up instead of the .devcontainer folder.
"context": "..",
// Update the 'dockerFile' property if you aren't using the standard 'Dockerfile' filename.
"dockerfile": "../Dockerfile"
},
// Use 'forwardPorts' to make a list of ports inside the container available locally.
"forwardPorts": [8001,8080]
}
O meu Dockerfile
é minimalista e se parece com o seguinte:
FROM quay.io/kiegroup/business-central-workbench:latest
E meu compose.yaml
arquivo fica assim:
services:
app:
entrypoint:
- sleep
- infinity
image: docker/dev-environments-default:stable-1
init: true
volumes:
- type: bind
source: /var/run/docker.sock
target: /var/run/docker.sock
O problema é que quando o VSCode envia a imagem para o Docker Desktop, o
CMD ["./start_business-central-wb.sh"]
encontrado na imagem pai não parece estar sendo acionado conforme visto nos logs
No entanto, quando clico em "Executar", o comando é iniciado após gerar uma nova instância
Que conceito estou perdendo sobre por que a imagem do Docker não começa a ser executada imediatamente quando o VSCode a envia para o Docker Desktop? Sou super inexperiente com os dois técnicos.
Qualquer ajuda é muito apreciada.
Responder1
O problema era que eu não estava usando overrideCommand
no meu devcontainer.json
arquivo. Este valor, quando definido como false, permite que o CMD listado no contêiner seja executado.
O arquivo a seguir parece fazer o que acredito que deveria estar fazendo.
{
"name": "Debian",
"image": "quay.io/kiegroup/business-central-workbench:latest",
"overrideCommand": false
}