当我使用build命令时,Docker compose会忽略我的Dockerfile
我有以下文件夹结构: /home/me/composetest /home/me/composetest/mywildflyimage 在复合材料内部,我有一个docker-compose.yml:当我使用build命令时,Docker compose会忽略我的Dockerfile,docker,docker-compose,Docker,Docker Compose,我有以下文件夹结构: /home/me/composetest /home/me/composetest/mywildflyimage 在复合材料内部,我有一个docker-compose.yml: web: image: test/mywildfly container_name: wildfly ports: - "8080:8080" - "9990:9990" web: build: mywildflyimage
web:
image: test/mywildfly
container_name: wildfly
ports:
- "8080:8080"
- "9990:9990"
web:
build: mywildflyimage
container_name: wildfly
ports:
- "8080:8080"
- "9990:9990"
在mywildflyimage中,我有一个docker图像:
FROM jboss/wildfly
EXPOSE 8080 9990
ADD standalone.xml /opt/jboss/wildfly/standalone/configuration/
RUN /opt/jboss/wildfly/bin/add-user.sh admin admin --silent
CMD ["/opt/jboss/wildfly/bin/standalone.sh", "-b", "0.0.0.0", "-bmanagement", "0.0.0.0"]
如果我跑
docker built -t test/mywildfly .
docker-compose up
一切都很好,管理部分考虑到0.0.0.0(-bmanagement是CMD命令的0.0.0.0部分)
如果我更改docker-compose.yml:
web:
image: test/mywildfly
container_name: wildfly
ports:
- "8080:8080"
- "9990:9990"
web:
build: mywildflyimage
container_name: wildfly
ports:
- "8080:8080"
- "9990:9990"
跑
码头工人整理
它仍然会引导,但管理部分不再绑定到0.0.0.0(这是我从中继承的映像的默认行为)
当我在docker-compose.ml中使用build
命令时,为什么它会停止工作
编辑:它似乎忽略了我的所有docker文件命令。在键入
docker compose up
之前,您应该使用docker compose build[options][SERVICE…]构建图像。
Options:
--force-rm Always remove intermediate containers.
--no-cache Do not use cache when building the image.
--pull Always attempt to pull a newer version of the image.
在您的例子中,例如:
docker compose build——无缓存web
在更改docker-comopse.yml后运行docker compose build
,然后在更改docker-comopse.yml文件后运行docker compose build
?然后,docker撰写
不,我没有,它解决了我的问题。你能把它改成答案吗?这样我就可以把它标为答案了?