VSCode构建的Docker镜像未自动执行CMD命令的问题咨询
VSCode构建的Docker镜像未自动执行CMD命令的问题咨询
TL;DR:通过VSCode构建的镜像,只有在Docker Desktop界面点击“Run”按钮时才会执行父镜像中的CMD ["./start_business-central-wb.sh"]命令,直接由VSCode推送后不会自动执行该命令。
大家好,
我正在尝试结合Drools镜像、Docker Desktop和VSCode进行开发。
我的devcontainer.json文件内容如下:
{ "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] }
Dockerfile非常简洁:
FROM quay.io/kiegroup/business-central-workbench:latest
还有我的compose.yaml文件:
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
现在遇到的问题是:当VSCode把镜像推送到Docker Desktop后,父镜像里的CMD ["./start_business-central-wb.sh"]命令似乎没有执行,从日志里也看不到相关记录。但当我在Docker Desktop里点击“Run”按钮后,会启动一个新的容器实例,这时这个命令才会正常运行。
我对Docker和VSCode这两个技术都不太熟悉,想请教一下这里面我忽略了什么概念?为什么VSCode推送镜像后,容器不会自动开始运行呢?
非常感谢大家的帮助!
备注:内容来源于stack exchange,提问作者Black Dynamite
相关产品推荐
相关产品推荐

