[解決済み] ENTRYPOINT配列でDocker環境変数を使用するにはどうすればよいですか?
2022-04-23 23:13:10
質問
環境変数を設定する場合、例えば
ENV ADDRESSEE=world
というような固定文字列に連結してエントリーポイントスクリプトで使いたい。
ENTRYPOINT ["./greeting", "--message", "Hello, world!"]
と
world
は環境変数の値ですが、どうすればいいのでしょうか?試しに
"Hello, $ADDRESSEE"
を取るので、うまくいかないようです。
$ADDRESSEE
を文字通りの意味で使用します。
どのように解決するのですか?
を使用しています。
実行形式
ENTRYPOINTの とは異なり
シェルフォーム
を使用します。
実行形式
は、コマンドシェルを起動しません。つまり、通常のシェル処理は行われません。例えば
ENTRYPOINT [ "echo", "$HOME" ]
は $HOME の変数置換を行いません。もし、シェル処理を行いたい場合は
シェルフォーム
または直接シェルを実行する、など。
ENTRYPOINT [ "sh", "-c", "echo $HOME" ]
.
execフォームを使用してシェルを直接実行する場合、シェルフォームの場合と同様に、環境変数の展開を行うのはシェルであり、dockerではありません(from
Dockerfileのリファレンス
)
あなたの場合、私は シェルフォーム
ENTRYPOINT ./greeting --message "Hello, $ADDRESSEE\!"
関連
-
[解決済み] docker: ドライバがエンドポイントウェブサーバの外部接続のプログラミングに失敗しました。
-
[解決済み] Dockerコンテナの中から、マシンのローカルホストに接続するにはどうすればよいですか?
-
[解決済み] ホストからDockerコンテナにファイルをコピーする方法は?
-
[解決済み] リポジトリを使用せずに、あるホストから別のホストにDockerイメージをコピーする方法
-
[解決済み] ホストからDockerコンテナのIPアドレスを取得する方法
-
[解決済み] Dockerコンテナのシェルに入るにはどうしたらいいですか?
-
[解決済み] 古いDockerコンテナを削除する方法
-
[解決済み] Dockerコンテナに環境変数を渡すにはどうしたらいいですか?
-
[解決済み】Dockerは仮想マシンとどう違うの?
-
[解決済み】Dockerfileで環境変数の値を取得する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】apt-get でインストールしても docker コマンドが見つからない。
-
[解決済み】ドッカーコンテナがすぐに終了してしまう理由
-
[解決済み] System.InvalidOperationException: Failed to deploy distro docker-desktop to C:\UserslenovaAppDataLocal╱distro: exit code: -1
-
[解決済み] docker: ドライバがエンドポイントウェブサーバの外部接続のプログラミングに失敗しました。
-
[解決済み] 接続するには、Dockerクライアントを昇格して実行する必要があります。
-
[解決済み] コード 0 で終了 docker
-
[解決済み] 作成前のチェックでエラーになる。「このコンピュータでは、VT-X/AMD-vが有効になっていません。有効になっているのに「BIOSで有効にすることが必須です。
-
httpコード中にdocker registry apiのインタラクションを呼び出す コード詳細
-
docker入門(dockerを使ったWebアプリケーションのデプロイメント)
-
様々なDockerディレクトリの役割