3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Docker】please remove it to avoid potential confusion service "db" refers to undefined volume db-data: invalid compose projectの解決方法

Last updated at Posted at 2025-11-11

はじめに

今回はDockerPostgreSQLのDBコンテナを作成する際に発生したエラーと、その解決方法についてまとめます。

この記事は個人的なアウトプットを目的として作成したものです。そのため、誤った情報や不足している内容が含まれている可能性があります。もし間違いや気になる点がございましたら、ぜひご指摘いただけますと幸いです

現象

以下のようにdocker-compose.ymlを設定した状態で、docker compose upを実行するとエラーが発生しました。

  db:
    image: postgres:16
    container_name: db
    volumes:
      - db-data:/var/lib/postgresql/data
    ports:
      - "5432:5432"
    environment:
      POSTGRES_USER: user
      POSTGRES_PASSWORD: password
      POSTGRES_DB: todo_db

実行時に表示されたエラーは以下です。

please remove it to avoid potential confusion service "db" refers to undefined volume db-data: invalid compose project

原因

このエラーの原因は、db-dataというボリュームを使用しているにも関わらず、それを定義していなかった ことです。

例えると、「倉庫(db-data)を使う」と言っているのに、その倉庫自体がまだ建設されていない」 という状況に似ています。

解決方法

ボリュームを明示的に定義することで解決できます。修正後のdocker-compose.ymlは以下のようになります。

  db:
    image: postgres:16
    container_name: db
    volumes:
      - db-data:/var/lib/postgresql/data
    ports:
      - "5432:5432"
    environment:
      POSTGRES_USER: user
      POSTGRES_PASSWORD: password
      POSTGRES_DB: todo_db
      
 volumes:
    da-data:

最後のボリュームを定義することでエラーが解決しました

終わりに

今回はDockerPostgreSQLを扱う際は、ボリュームの管理を意識することが大切だと学びました。

参考

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?