0

私は boot2docker を使用しており、Dockerfile を使用して単純な Docker イメージを構築したいと考えています。

# Pull base image.
FROM elasticsearch

# Install Marvel plugin

RUN \
    && export ES_HOME=/usr/share/elasticsearch  \
    && cd $ES_HOME  \
    && bin/plugin  -u  file:///c/Users/buliov1/dev/elastic/plugins/marvel-latest.zip -i elasticsearch/marvel/latest

パス/c/Users/buliov1/dev/elastic/plugins/marvel-latest.zipが存在し、 dockerfile をビルドしたマシンにアクセスできます。問題は、ビルド内で Failed: FileNotFoundException[/c/Users/buliov1/dev/elastic/plugins/marvel-latest.zip (No such file or directory)].

ドキュメントを検索したところ、ADD/COPY を使用して最初にイメージ内のファイルをコピーし、次にそのファイルを使用するコマンドを実行することが唯一の解決策でした。docker build がどのように機能するのか正確にはわかりませんが、最初にファイルをコピーせずにビルドする方法はありますか?

4

1 に答える 1

2

docker buildプロセスがDocker コンテナーで実行されており、ホスト ファイルシステムにアクセスできません。ビルド環境にファイルを取得する唯一の方法は、ADDorメカニズムを使用することです (または、またはor などCOPYを使用してネットワーク経由でファイルをフェッチすることです)。curlwget

于 2015-03-18T14:29:59.620 に答える