[解決済み】docker composeで環境変数を使用する方法
2022-03-29 17:34:59
質問
docker-compose.ymlの中で、env変数を使用できるようにしたい。
docker-compose up
. これはその例です。
私は今日、基本的なdocker runコマンドでこれをやっていますが、これは私自身のスクリプトに巻きついています。 このようなbashラッパーを使用せずに、composeで実現する方法はありますか?
proxy:
hostname: $hostname
volumes:
- /mnt/data/logs/$hostname:/logs
- /mnt/data/$hostname:/data
解決方法は?
-
を作成します。
template.yml
で、これはあなたのdocker-compose.yml
を環境変数で指定します。 - 環境変数がファイル 'env.sh' に入っているとします。
- 以下のコードをshファイルに記述して実行します。
ソース env.sh; rm -rf docker-compose.yml; envsubst < "template.yml" > "docker-compose.yml";
新しいファイル
docker-compose.yml
は、環境変数に正しい値を入れて生成されます。
template.ymlファイルのサンプルです。
oracledb:
image: ${ORACLE_DB_IMAGE}
privileged: true
cpuset: "0"
ports:
- "${ORACLE_DB_PORT}:${ORACLE_DB_PORT}"
command: /bin/sh -c "chmod 777 /tmp/start; /tmp/start"
container_name: ${ORACLE_DB_CONTAINER_NAME}
env.shファイルのサンプルです。
#!/bin/bash
export ORACLE_DB_IMAGE=<image-name>
export ORACLE_DB_PORT=<port to be exposed>
export ORACLE_DB_CONTAINER_NAME=ORACLE_DB_SERVER
関連
-
[解決済み] Dockerコンテナの中から、マシンのローカルホストに接続するにはどうすればよいですか?
-
[解決済み] Docker Dockerコンテナからホストへのファイルコピー
-
[解決済み] ホストからDockerコンテナにファイルをコピーする方法は?
-
[解決済み] リポジトリを使用せずに、あるホストから別のホストにDockerイメージをコピーする方法
-
[解決済み] ホストからDockerコンテナのIPアドレスを取得する方法
-
[解決済み] Dockerコンテナに環境変数を渡すにはどうしたらいいですか?
-
[解決済み] Docker-Composeを使用して、複数のコマンドを実行する方法
-
[解決済み】Dockerは仮想マシンとどう違うの?
-
[解決済み】Docker ComposeはYを起動する前にコンテナXを待ちます。
-
[解決済み】Dockerのイメージを削除する方法を教えてください。
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] DockerFileからDockerインスタンスを実行するにはどうすればよいですか?
-
[解決済み] DockerfileでRUN mkdirを実行できない
-
[解決済み] Dockerはインストールされているのに、Docker Composeがインストールされていないのはなぜですか?
-
[解決済み] Dockerの "cd "を実行しようとすると「実行ファイルが$PATHに見つからない: 不明」と表示される。
-
[解決済み] ファイル全体を見たり、ファイル全体を走査するのを待たずに、ログの現在の位置からドッカーログをテールする方法
-
[解決済み] Dockerfileの'COPY'と'ADD'コマンドの違いは何ですか?
-
[解決済み] Dockerfileを散らかさずに、複数の環境変数を読み込むには?
-
[解決済み] Docker: ドッカープッシュのための認証方法は?
-
[解決済み】Dockerfileを1つのコマンドでビルドして実行する。
-
[解決済み】Dockerは使用量が多いのに、Dockerコンテナがない