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】the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion service "db" refers to undefined volume pgdata: invalid compose project エラーが発生する

Last updated at Posted at 2025-11-15

はじめに

docker-compose.ymlにpostgressのimagesを定義追加、起動したところ表題のエラーが発生しました。
解決方法をまとめます。

問題

docker-compose.ymlにdb定義のimageを追加し、コンポーネントを起動したところエラーが発生した。

image.png

エラーとなった定義
docker-compose.yml
version: "3.8"
services:
  client:
    build: .
    container_name: my-container
    ports:
      - "5173:5173"
    depends_on:
      - api
    volumes:
      - .:/app
      - /app/node_modules

  api:
    build: ./todo-api
    container_name: api
    ports:
      - "3000:3000"

  db:
    image: postgres
    container_name: postgres-db
    environment:
      POSTGRES_PASSWORD: mysecretpassword
    volumes:
      - pgdata:/var/lib/postgresql/data

原因

トップレベル(最下部)にvolumes:pgdataを記載していなかったため。

ボリュームとは

公式ドキュメントより引用

ボリュームとは、Docker コンテナーにおいて生成され利用されるデータを、永続的に保持する目的で利用される仕組みです。

docker-compose.yml
version: "3.8"
services:
  client:
    build: .
    container_name: my-container

    ~~ 省略 ~~  
  db:
    image: postgres
    container_name: postgres-db
    environment:
      POSTGRES_PASSWORD: mysecretpassword
    volumes:
      - pgdata:/var/lib/postgresql/data

dbサービスでvolumes:- pgdata:/var/lib/postgresql/dataを指定していたにも関わらず、肝心のvolumesが作成されていないため、参照できずにエラーとなっていました。

解決方法

volumes:pgdataを追記する。

docker-compose.yml
version: "3.8"
services:
  client:
    build: .
    container_name: my-container
    ports:
      - "5173:5173"

    ~~ 省略 ~~ 

  db:
    image: postgres
    container_name: postgres-db
    environment:
      POSTGRES_PASSWORD: mysecretpassword
    volumes:
      - pgdata:/var/lib/postgresql/data

+ volumes:
+   pgdata:

参考資料

3
1
1

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?