1. ホーム
  2. 変数

[解決済み】Dockerfileで変数を定義する方法は?

2022-04-01 16:31:15

質問

Dockerfileの中で、後で使う変数を定義したいのですが、どうすればいいですか?

を意識しています。 ENV という命令がありますが、私はこれらの変数を環境変数にしたくありません。

Dockerfileのスコープで変数を宣言する方法はありますか?

どのように解決するのですか?

を使用することができます。 ARG - 見る https://docs.docker.com/engine/reference/builder/#arg

ARG 命令は、ユーザが ビルド時に docker build コマンドを使用して --build-arg <varname>=<value> フラグを使用します。ユーザがビルドを指定した場合 Dockerfileで定義されていない引数を指定した場合、ビルド時に というエラーが発生します。

<ブロッククオート

ビルド時にCOPYを使用すると便利です(例:特定のフォルダのようなタグの特定コンテンツをコピーする)。 例えば

ARG MODEL_TO_COPY
COPY application ./application
COPY $MODEL_TO_COPY ./application/$MODEL_TO_COPY

コンテナ構築中。

docker build --build-arg MODEL_TO_COPY=model_name -t <container>:<model_name specific tag> .