技術的な話

docker-composeで一時的な環境変数を付与してコンテナ内のスクリプトを実行する

やろうとしたこと

docker-composeで環境変数を変更しながら、コンテナ内のスクリプトをホスト側から実行したかった。

docker runと同じようなのがdocker-composeにあるかなぁ思い調べたら、同じ要領で普通にいけたのでメモ。

コマンドも可能な限り統一したいけど、docker-composeもdocker側に飲み込まれそうなんだよね。

https://matsuand.github.io/docs.docker.jp.onthefly/engine/reference/commandline/compose/

これでOK

runと同じオプションでした。

# <ENV_VARIABLE>=<VALUE>:環境変数
# <container-name>:コンテナ名
$ sudo docker-compose exec -e <ENV_VARIABLE>=<VALUE> <container-name> ./script.sh

まとめ

そろそろ普段使用するコマンドをdocker-composeからdocker composeに変更していこうかなぁ。
公式ドキュメントもそっちの方が引っ掛かりやすくなっていますし。

というか調べたら2020年の10月にv1がリリースされていて、今も活発に開発されていそうな様子。

https://github.com/docker/compose-cli

docker-composeの互換性も概ねあって、version2も控えていて新しい機能の追加も期待されます。

乗るしかないこのビッグウェーブに。

-技術的な話
-,