私はmavenアプリケーションでDockerfileを使ってビルドしているノートアプリケーションを持っています。 artifact note-1.0.warをwebappsのようなフォルダにローカルリンクされたボリュームにコピーしたいと思います。これまでのところ私はDockerfileに次き:Dockerfileローカルリンクボリュームへの戦争コピー
FROM maven:latest
MAINTAINER Sonam <[email protected]>
RUN apt-get update
WORKDIR /code
#Prepare by downloading dependencies
ADD pom.xml /code/pom.xml
RUN ["mvn", "dependency:resolve"]
RUN ["mvn", "verify"]
#Adding source, compile and package into a fat jar
ADD src /code/src
RUN ["mvn", "clean"]
#RUN ["mvn", "install"]
RUN ["mvn", "install", "-Dmaven.test.skip=true"]
RUN mkdir webapps
COPY note-1.0.war webapps
#COPY code/target/note-1.0.war webapps
は、残念ながら、私はCOPY文で「そのようなファイルやディレクトリを」見ていない保ちます。以下は、ドッカーハブのビルドからのエラーです:
...
---> bd555aecadbd
Removing intermediate container 69c09945f954
Step 11 : RUN mkdir webapps
---> Running in 3d114c40caee
---> 184903fa1041
Removing intermediate container 3d114c40caee
Step 12 : COPY note-1.0.war webapps
lstat note-1.0.war: no such file or directory
私は
RUN mkdir webapps
おかげ
のようなものを使用する必要があります。 – gile
はい、それを見つけることができないようです。どのようにしてそれを作ることができるのか分かり、それを "見つけ"それをコピーするのですか? – Sonam
Dockerfileを保存したのと同じディレクトリにnote-1.0.warをダブルクリックしましたか? COPYの詳細については、https://docs.docker.com/engine/reference/builder/#/copy – gile