ホームページ > バックエンド開発 > Golang > Docker イメージをビルドするときに「インポート パスがホスト名で始まらない」エラーが表示されるのはなぜですか?

Docker イメージをビルドするときに「インポート パスがホスト名で始まらない」エラーが表示されるのはなぜですか?

Mary-Kate Olsen
リリース: 2024-11-03 16:57:30
オリジナル
555 人が閲覧しました

Why Am I Receiving a

Docker ビルド エラー: 'インポート パスがホスト名で始まらない'

ローカル パッケージを使用して Docker イメージを構築しようとすると、「インポート」エラーが発生する場合があります。パスがホスト名で始まっていません。」この問題は、ローカル パッケージを依存関係として利用する目的で Dockerfile を構築するときに発生します。

単純な Dockerfile の場合、ユーザーは通常、次のようなファイルを作成します。

FROM golang:onbuild
EXPOSE 8080
ログイン後にコピー

この形式は次のとおりです。このアプローチは、記事「Docker を使用した Go サーバーのデプロイ」で概説されています。 「git-go-websiteskeleton」のコードをビルド ソースとして統合すると、次のエラーが表示される場合があります:

import "git-go-websiteskeleton/app/common": import path does not begin with hostname
package git-go-websiteskeleton/app/common: unrecognized import path "git-go-websiteskeleton/app/common"
import "git-go-websiteskeleton/app/home": import path does not begin with hostname
package git-go-websiteskeleton/app/home: unrecognized import path "git-go-websiteskeleton/app/home"
import "git-go-websiteskeleton/app/user": import path does not begin with hostname
package git-go-websiteskeleton/app/user: unrecognized import path "git-go-websiteskeleton/app/user"
ログイン後にコピー

根本的な原因は、アプリケーションのビルドが Docker コンテナ内で行われ、依存関係にアクセスできることが必要であることです。

このエラーを修正するには、「golang:onbuild」の基本構文を超えてください。アプリケーションを構築するための詳細な手順を含むカスタマイズされた 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 を指定します。

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート