Postgres Docker 持久性
Postgres Docker Persistence
我刚开始使用 dockers,但我有些不明白。我只是使用 docker-compose 来使用 PostgreSQL 的基本图像,但我不知道如何在杀死 docker 甚至删除我的本地图像后使数据库中的数据持久化.这有可能吗?
这是我的实际 docker-compose.yml:
version: "3"
services:
pintaecolorea_bd:
image: postgres
environment:
POSTGRES_PASSWORD: <PASSWORD>
POSTGRES_USER: postgres
ports:
- "1234:5432"
networks:
- "service"
networks:
service:
也许我应该使用卷?怎么样?
每当您使用图像时。在 http://hub.docker.com/. The image you are using has documentation on http://hub.docker.com/_/postgres
上查看其文档
文档提到数据保存在 /var/lib/postgresql/data
version: "3"
services:
pintaecolorea_bd:
image: postgres
environment:
POSTGRES_PASSWORD: <PASSWORD>
POSTGRES_USER: postgres
ports:
- "1234:5432"
networks:
- "service"
volumes:
- ./data:/var/lib/postgresql/
networks:
service:
因此您将当前文件夹中的数据文件夹./data
映射到/var/lib/postgresql/
。当容器结束时,卷将被持久化
我刚开始使用 dockers,但我有些不明白。我只是使用 docker-compose 来使用 PostgreSQL 的基本图像,但我不知道如何在杀死 docker 甚至删除我的本地图像后使数据库中的数据持久化.这有可能吗?
这是我的实际 docker-compose.yml:
version: "3"
services:
pintaecolorea_bd:
image: postgres
environment:
POSTGRES_PASSWORD: <PASSWORD>
POSTGRES_USER: postgres
ports:
- "1234:5432"
networks:
- "service"
networks:
service:
也许我应该使用卷?怎么样?
每当您使用图像时。在 http://hub.docker.com/. The image you are using has documentation on http://hub.docker.com/_/postgres
上查看其文档文档提到数据保存在 /var/lib/postgresql/data
version: "3"
services:
pintaecolorea_bd:
image: postgres
environment:
POSTGRES_PASSWORD: <PASSWORD>
POSTGRES_USER: postgres
ports:
- "1234:5432"
networks:
- "service"
volumes:
- ./data:/var/lib/postgresql/
networks:
service:
因此您将当前文件夹中的数据文件夹./data
映射到/var/lib/postgresql/
。当容器结束时,卷将被持久化