ホームページ  >  記事  >  バックエンド開発  >  ローカル パッケージを使用すると、「インポート パスがホスト名で始まらない」というメッセージが表示され、Docker イメージのビルドが失敗するのはなぜですか?

ローカル パッケージを使用すると、「インポート パスがホスト名で始まらない」というメッセージが表示され、Docker イメージのビルドが失敗するのはなぜですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-04 03:30:02785ブラウズ

Why Does My Docker Image Build Fail with

ローカル パッケージを使用した Docker イメージのビルド: エラー「インポート パスがホスト名で始まらない」

ローカル パッケージを使用すると、「インポート パスがホスト名で始まりません。」というエラーが発生する場合があります。このエラーは、Dockerfile が依存関係を取得する手順を含まずにベース イメージ golang:onbuild を指定しているために発生します。

golang:onbuild イメージは単純なシナリオに適していますが、アプリケーションの依存関係を自動的に検出しません。ビルド プロセス中にローカル コードを使用する必要がある場合は、独自の Dockerfile を作成する必要があります。

次の手順を使用して独自の Dockerfile を作成できます:

FROM golang:1.6
ADD . /go/src/yourapplication
RUN go get github.com/jadekler/git-go-websiteskeleton
RUN go install yourapplication
ENTRYPOINT /go/bin/yourapplication
EXPOSE 8080

この Dockerfile は次の処理を行います:

  • ソース コードと依存関係をコンテナーに追加します。
  • アプリをビルドします。
  • アプリケーションを起動します。
  • ポート 8080 を外部アクセスに公開します。

独自の Dockerfile を使用し、依存関係を明示的に取得することで、ネイティブ コードを含む Docker イメージを正常に構築できるはずです。

以上がローカル パッケージを使用すると、「インポート パスがホスト名で始まらない」というメッセージが表示され、Docker イメージのビルドが失敗するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。