postgresql - 我如何使用 docker-compose 让 postgres 数据持久化

标签 postgresql docker boot2docker docker-compose

当我重新启动 docker 时,我的数据一直丢失,这是我的 docker-compose.yml

postgres:
  image: postgres
  volumes:
    - /data/myproject/postgres:/var/lib/postgresql/data
  ports:
    - '15432:5432'
  environment:
    POSTGRES_PASSWORD: mypassword
    POSTGRES_USER: mypassword

任何帮助将不胜感激,谢谢

最佳答案

由于您使用的是 boot2docker,因此您需要知道 only /Users is shared between the host (a Mac for instance) and the docker VM .

这意味着当您重新启动 VM 时,存储在 /Users 中的所有内容(如 /data/myproject/postgres)都将丢失。

尝试使用在主机和 VM 之间实际共享的主机路径安装卷。

关于postgresql - 我如何使用 docker-compose 让 postgres 数据持久化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33807106/

相关文章:

postgresql - 为什么当我尝试删除约束时 PostgreSQL 说约束不存在?

sql - 使 PostgreSQL 查询更干

scala - 大型 Docker 上下文会减慢 docker-compose 构建速度

php - 如何运行安装了 Nginx 的 docker 容器?

docker - Docker推送失败

postgresql - 如何以非root用户身份在docker中运行postgres?

sql - 向表添加约束的 PostgreSQL 语法是否存在不一致?

node.js - Node-RED docker 读取目录内容的问题

docker - 如何检查mysql docker容器内的mysql版本

docker - 有没有一种方法可以将文件存储在Docker主机上,而主机重启后该文件将继续存在?