postgresql - Docker volume for persisting PostgreSQL database data
问题描述
I'm starting a PostgreSQL server with Docker Compose in my MacOS machine:
version: '3.1'
services:
db:
image: postgres
restart: always
environment:
POSTGRES_PASSWORD: example
ports:
- 5432:5432
volumes:
- ./dbdata:/var/lib/postgresql/data
When I connect to the server using a database GUI client and create a new database, it works fine. But then, if I restart the container that database does not exist anymore.
$ docker stop postgres_db_1
$ docker start postgres_db_1
However, if I make changes on the "default" postgres
database (e.g. create a new table), that change is persisted in the Docker volume successfuly (I restart container and it remains there.)
As you see, I have this volume mapping:
./dbdata:/var/lib/postgresql/data
Is this mapping correct for all databases inside PostgreSQL server?
解决方案
推荐阅读
- python-3.x - 2to3 Python 模块转换文件的准确率是多少?
- sql - 来自时间戳的星期几,SQL
- python - 小于 501 的质数
- accord.net - Accord .NET,预测索赔
- angular - navigateByUrl 无法路由应用程序
- angular - formio select组件中键和值属性的JSON数据是什么
- node.js - 如何从导致突变失败的graphql响应中删除`__typename`字段
- python - 只有 size-1 的数组可以转换为 Python 标量
- sql - SQL/T-SQL。从数字创建范围
- c# - 如果值在此行中,如何获取行号并返回它