Dockerビルドが失敗する「COPYが失敗しました:ソースファイルが指定されていません」

サンダーシータート

私はDockerを初めて使用します(ただし、開発は初めてです)。

私はこのDockerfileを持っています:

    #
    # Build stage
    #
    FROM maven:3.6.3-jdk-8-slim AS build
    COPY src /home/app/src
    COPY pom.xml /home/app
    RUN mvn -f /home/app/pom.xml clean package

    #
    # Package stage
    #
    FROM openjdk:8-jdk-alpine
    RUN addgroup -S spring && adduser -S spring -G spring
    USER spring:spring
    ARG war_FILE=/home/app/target/*.war
    COPY ${war_FILE} app.war
    ENTRYPOINT ["java","-jar","/app.war"]

そして(これまでのところ)ビルドは成功します:

    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 01:51 min
    [INFO] Finished at: 2020-01-15T08:43:54Z
    [INFO] ------------------------------------------------------------------------

しかし、最終的に、Dockerビルドは失敗します。

    Removing intermediate container 7c66e8b7dbed
    ---> 74b1c50c84ad
    Step 5/10 : FROM openjdk:8-jdk-alpine
    ---> a3562aa0b991
    Step 6/10 : RUN addgroup -S spring && adduser -S spring -G spring
    ---> Running in ca236cf9a705
    Removing intermediate container ca236cf9a705
    ---> 0c255ef5868f
    Step 7/10 : USER spring:spring
    ---> Running in 8452dcff6a8a
    Removing intermediate container 8452dcff6a8a
    ---> 6265f412699a
    Step 8/10 : ARG war_FILE=/home/app/target/*.war
    ---> Running in 3b54067b2cca
    Removing intermediate container 3b54067b2cca
    ---> c186c4a7e443
    Step 9/10 : COPY ${war_FILE} app.war
    COPY failed: no source files were specified

私はおそらく信じられないほど愚かなことをしているでしょうが、どこから探し始めるのかわかりません...

レオパル

マルチステージビルドでは、各ステージのデータはステージ間で共有さません

したがって、実際にbuildステージ上で、の下にwarファイルを正常に作成しました/home/app/target/

ただし、第2段階ではこのパスが存在しないため、エラーが報告されます。

これを解決するには、第2段階を次のように置き換えます。

FROM openjdk:8-jdk-alpine
RUN addgroup -S spring && adduser -S spring -G spring
USER spring:spring
COPY --from=build /home/app/target/war_name.war app.war
ENTRYPOINT ["java","-jar","/app.war"]

公式ドキュメントからの

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Dockerイメージjarファイルのビルド:コピーに失敗しました:ソースファイルが指定されていません

分類Dev

Dockerfile ADDが失敗しました:ソースファイルが指定されていません

分類Dev

コピーに失敗しました:ソースファイルが指定されていません

分類Dev

マルチステージDockerビルドCOPYが失敗し、ファイルが見つかりません

分類Dev

smbへのmvファイルが失敗しました、スペースはまだ使用されています、ファイルがありません

分類Dev

smbへのmvファイルが失敗しました、スペースはまだ使用されています、ファイルがありません

分類Dev

DockerfileがDockerHubのルートディレクトリにない場合、「COPYが失敗しました:ソースファイルが指定されていません」

分類Dev

モジュールのビルドに失敗しました:エラー:パーサーとファイルパスが指定されていません。nuxtjsでパーサーを推測できませんでした

分類Dev

TensorFlow-GPUをインストールしようとしています... ImportErrorで失敗しました:DLLのロードに失敗しました:指定されたモジュールが見つかりませんでした

分類Dev

「コマンドが指定されていません」でサービスの作成に失敗しました

分類Dev

CUDAアプリのCMakeベースのビルドが失敗します-リンカーにファイルが渡されません

分類Dev

Docker:COPYが失敗しました:CreateFile、奇妙な場所でファイルを探しています

分類Dev

Makefile:CreateProcess(...)が失敗しました。システムは、指定されたファイルを見つけることができません

分類Dev

Laravel 5の検証に失敗しました(フィールドが設定されていません)

分類Dev

ソースのフォルダ名に「.js」が含まれているため、Gruntが失敗します

分類Dev

エラーを削除する方法:バンドルに失敗しました:ReferenceError:ファイルのSHA-1が計算されません

分類Dev

追加されたデータベースフィールドの「メソッドが見つかりません」という移行に失敗します

分類Dev

javax.mail.AuthenticationFailedException:接続に失敗しました、パスワードが指定されていませんか?

分類Dev

パッケージを更新できません-「パッケージファイルのダウンロードに失敗しました。インターネットを確認してください...」または「認証されていないソースからのインストールが必要です」

分類Dev

「DLLの読み込みに失敗しました:指定されたモジュールが見つかりませんでした」というエラーが表示されます。PyCharmを使用してAnacondaでWindows用のテンソルフローをインポートしようとしている間

分類Dev

「Windowsは指定されたデバイス、パス、またはファイルにアクセスできません」という通常のプロセスが失敗した場合、抗ウイルスソフトウェア(アバスト)をアンインストールする方法は?

分類Dev

AWS CodeDeployの失敗:指定されたファイルがこの場所にすでに存在するため、デプロイが失敗しました

分類Dev

Dockerハブの自動ビルドは失敗しますが、ローカルでは失敗しません

分類Dev

OS X 10.7.5でのAOSPビルドが失敗します: 'dprintf'が宣言されていません

分類Dev

ファイルが見つかりません:ソースリンク認証に失敗しました

分類Dev

ミニファイが有効になっていると、Gradleビルドが失敗しました

分類Dev

CodeIgniterのアップロードが失敗します-ファイルタイプは許可されていません

分類Dev

AndroidGradleが失敗しました複数のdexファイルでokhttpが定義されています

分類Dev

WARN - カーソルが、以前にリリースされ、利用できませんされていますgetImportedKeysに失敗しました。

Related 関連記事

  1. 1

    Dockerイメージjarファイルのビルド:コピーに失敗しました:ソースファイルが指定されていません

  2. 2

    Dockerfile ADDが失敗しました:ソースファイルが指定されていません

  3. 3

    コピーに失敗しました:ソースファイルが指定されていません

  4. 4

    マルチステージDockerビルドCOPYが失敗し、ファイルが見つかりません

  5. 5

    smbへのmvファイルが失敗しました、スペースはまだ使用されています、ファイルがありません

  6. 6

    smbへのmvファイルが失敗しました、スペースはまだ使用されています、ファイルがありません

  7. 7

    DockerfileがDockerHubのルートディレクトリにない場合、「COPYが失敗しました:ソースファイルが指定されていません」

  8. 8

    モジュールのビルドに失敗しました:エラー:パーサーとファイルパスが指定されていません。nuxtjsでパーサーを推測できませんでした

  9. 9

    TensorFlow-GPUをインストールしようとしています... ImportErrorで失敗しました:DLLのロードに失敗しました:指定されたモジュールが見つかりませんでした

  10. 10

    「コマンドが指定されていません」でサービスの作成に失敗しました

  11. 11

    CUDAアプリのCMakeベースのビルドが失敗します-リンカーにファイルが渡されません

  12. 12

    Docker:COPYが失敗しました:CreateFile、奇妙な場所でファイルを探しています

  13. 13

    Makefile:CreateProcess(...)が失敗しました。システムは、指定されたファイルを見つけることができません

  14. 14

    Laravel 5の検証に失敗しました(フィールドが設定されていません)

  15. 15

    ソースのフォルダ名に「.js」が含まれているため、Gruntが失敗します

  16. 16

    エラーを削除する方法:バンドルに失敗しました:ReferenceError:ファイルのSHA-1が計算されません

  17. 17

    追加されたデータベースフィールドの「メソッドが見つかりません」という移行に失敗します

  18. 18

    javax.mail.AuthenticationFailedException:接続に失敗しました、パスワードが指定されていませんか?

  19. 19

    パッケージを更新できません-「パッケージファイルのダウンロードに失敗しました。インターネットを確認してください...」または「認証されていないソースからのインストールが必要です」

  20. 20

    「DLLの読み込みに失敗しました:指定されたモジュールが見つかりませんでした」というエラーが表示されます。PyCharmを使用してAnacondaでWindows用のテンソルフローをインポートしようとしている間

  21. 21

    「Windowsは指定されたデバイス、パス、またはファイルにアクセスできません」という通常のプロセスが失敗した場合、抗ウイルスソフトウェア(アバスト)をアンインストールする方法は?

  22. 22

    AWS CodeDeployの失敗:指定されたファイルがこの場所にすでに存在するため、デプロイが失敗しました

  23. 23

    Dockerハブの自動ビルドは失敗しますが、ローカルでは失敗しません

  24. 24

    OS X 10.7.5でのAOSPビルドが失敗します: 'dprintf'が宣言されていません

  25. 25

    ファイルが見つかりません:ソースリンク認証に失敗しました

  26. 26

    ミニファイが有効になっていると、Gradleビルドが失敗しました

  27. 27

    CodeIgniterのアップロードが失敗します-ファイルタイプは許可されていません

  28. 28

    AndroidGradleが失敗しました複数のdexファイルでokhttpが定義されています

  29. 29

    WARN - カーソルが、以前にリリースされ、利用できませんされていますgetImportedKeysに失敗しました。

ホットタグ

アーカイブ