我是遵循林达码头教程和执行与码头撰写文件有关的东西。
这是我的docker-compose.yml文件。
more docker-compose.yml
version: '3'
services:
web:
image: jboss/wildfly
volumes:
- ~/deployments:/opt/jboss/wildfly/standalone/deployments
ports:
- 8080:8080根据作者的说法,我试图将webapp.war文件复制到deployments/文件夹中,这给我带来了错误。看来,停靠文件的卷映射不起作用。
cp /home/user/Demos/docker-for-java/chapter2/webapp.war部署/ cp:无法创建常规文件“部署/”:而不是目录
docker-compose ps
Name Command State Ports
--------------------------------------------------------------------------------
helloweb_web_1 /opt/jboss/wildfly/bin/sta ... Up 0.0.0.0:8080->8080/tcp发布于 2019-02-02 18:52:51
我觉得你可能曲解了教程。我还没有看过教程本身,但是在查看WildFly Docker映像这里的文档时,需要扩展基本映像并在其中添加war文件:
要做到这一点,您只需要通过创建一个新映像来扩展jboss/通配符映像。将应用程序与ADD命令一起放置在部署/目录中(但要确保在部署文件夹路径上包含尾随斜杠,提供更多信息)。您还可以作为附加步骤(运行命令)对配置进行更改(如果有的话)。
这意味着您需要创建一个具有大致此内容的Dockerfile (用war文件的路径更改your-awesome-app.war ):
FROM jboss/wildfly
ADD your-awesome-app.war /opt/jboss/wildfly/standalone/deployments/在此之后,您需要将docker-compose.yml更改为从Dockerfile构建而不是使用jboss/wildfly (注意使用build: .而不是image: jboss/wildfly):
version: '3'
services:
web:
build: .
ports:
- 8080:8080如果遇到任何问题,请试一试并发表评论。
https://stackoverflow.com/questions/54496150
复制相似问题