Docker Composeのprofileを使う

既存のDocker Composeの設定を見ていると、profileという指定があることに気づきました。というか、正確にはAIが作ったcomposeの設定にありました。今回はそれを調べた時のメモを共有します。

とりあえず公式ドキュメントを知りたいと思いますので、公式へのリンクを貼ります。

https://docs.docker.com/compose/how-tos/profiles

基本的には公式を見てもらえればいいと思いますが、私の読みやすいようにノートを書いておきます。

profileって何?

docker-compose.yaml(compose.yaml)で、profileを指定できます。そうすると起動時にprofileを指定しないと、起動しないようになります。

具体例を見ないとわからないので、具体例を示します。AIが出してきたような設定は次のような設定です。

services:
  web:
    build: .

  db:
    image: mysql

  test-unit:
    build:
      context: .
      dockerfile: Dockerfile.test
    command: pytest
    profiles: [test]

実際のところ、 Dockerfile.test の中にテスト用のライブラリがインストール・セットアップする処理が含まれています。

上記のように定義した上で、以下のように実行すると、 pytest が実行されます。

docker compose run --rm test-unit

類似投稿

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です