java - Docker,如何复制所有 .ear 文件夹?

标签 java docker dockerfile

我有以下结构:

[测试]:

  • jetty 文件
  • [Test1.ear]
  • [Test2.ear]
  • ...
  • [TestN.ear]

我正在尝试将所有 ear 文件夹复制到“config/apps”文件夹:

COPY *.ear config/apps/

预期的容器结构:

[配置/应用]:

  • [Test1.ear]
  • [Test2.ear]
  • ...
  • [TestN.ear]

但是在“config/apps”文件夹中只复制 .ear 文件夹的内容(.war、.jar)。

在这种情况下如何使用 COPY?

最佳答案

也许您可以使用 .dockerignore 仅添加 Test1.ear、Test2.ear 等 来构建上下文,然后使用 COPY 。 config/apps 以满足您的要求:

.dockerignore:

*
!*.ear

Docker 文件:

FROM alpine

COPY . config/apps

测试:

cake@cake:~/1$ ls
abc  Dockerfile  Test1.ear  Test2.ear

cake@cake:~/1$ docker build -t abc:1 .
Sending build context to Docker daemon   5.12kB
Step 1/2 : FROM alpine
 ---> b7b28af77ffe
Step 2/2 : COPY . config/apps
 ---> 4726a5828435
Successfully built 4726a5828435
Successfully tagged abc:1

cake@cake:~/1$ docker run --rm -it abc:1 ls /config/apps
Test1.ear  Test2.ear

关于java - Docker,如何复制所有 .ear 文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57375069/

相关文章:

java - OpenJDK 的 vm 设置了哪些系统属性来区别于 Sun/Oracle 的 vm?

linux - 如何通过扩展名将文件从本地机器复制到 Docker 容器?

docker - 使用 heroku.yml 部署到 Heroku 多个 docker 镜像,收到错误 : No default language could be detected for this app

mysql - 通过 Docker 运行 mysql 脚本时出错?

python - Docker 构建在 `add-apt-repository: not found` 上失败

java - Web 服务可以在运行时加载 jar 吗

java - fb 中的操作 :request form is always null

docker - 在Nginx配置中使用docker-compose服务名称

java - 如何在Java中向文本添加新行?

amazon-web-services - 是否可以从现有的 x86-64 镜像构建 arm64 镜像?