在PostgreSQL Docker容器中运行pg_rewind的步骤如下:
version: '3'
services:
postgres:
image: postgres
restart: always
volumes:
- /path/to/data:/var/lib/postgresql/data
ports:
- 5432:5432
environment:
- POSTGRES_PASSWORD=your_password
- POSTGRES_USER=your_username
- POSTGRES_DB=your_database_name
请确保将/path/to/data
替换为您希望存储PostgreSQL数据的实际路径,并将your_password
、your_username
和your_database_name
替换为您自己的值。
docker-compose -f docker-compose-pgrewind.yml up -d
这将启动一个新的PostgreSQL容器,并将其绑定到本地的5432端口。
docker ps
您应该能够看到一个名为docker_postgres_1
(或类似的名称)的容器正在运行。
docker exec -it docker_postgres_1 bash
请注意,docker_postgres_1
是容器的名称,您可能需要根据实际情况进行调整。
pg_rewind --target-pgdata=/var/lib/postgresql/data --source-server="host=your_source_host port=your_source_port user=your_source_user password=your_source_password"
请将your_source_host
、your_source_port
、your_source_user
和your_source_password
替换为您实际的源PostgreSQL服务器的连接信息。
exit
请注意,以上步骤假设您已经熟悉Docker和PostgreSQL的基本概念和操作。如果您对其中的某些步骤不熟悉,请参考相关文档或教程进行学习。