How to persist data in a dockerized postgres database using volumes

后端 未结 4 668
伪装坚强ぢ
伪装坚强ぢ 2020-11-28 01:32

My docker compose file has three containers, web, nginx, and postgres. Postgres looks like this:

postgres:
  container_name: postgres
  restart: always
  ima         


        
4条回答
  •  鱼传尺愫
    2020-11-28 01:37

    You can create a common volume for all Postgres data

     docker volume create pgdata
    

    or you can set it to the compose file

       version: "3"
       services:
         db:
           image: postgres
           environment:
             - POSTGRES_USER=postgres
             - POSTGRES_PASSWORD=postgress
             - POSTGRES_DB=postgres
           ports:
             - "5433:5432"
           volumes:
             - pgdata:/var/lib/postgresql/data
           networks:
             - suruse
       volumes: 
         pgdata:
    

    It will create volume name pgdata and mount this volume to container's path.

    You can inspect this volume

    docker volume inspect pgdata
    
    // output will be
    [
        {
            "Driver": "local",
            "Labels": {},
            "Mountpoint": "/var/lib/docker/volumes/pgdata/_data",
            "Name": "pgdata",
            "Options": {},
            "Scope": "local"
        }
    ]
    

提交回复
热议问题