拉取镜像
docker pull postgres:10.10
数据持久化
创建本地卷
docker volume create postgredb
启动容器的方法
启动时,需要将刚上个步骤创建的卷 postgredb 挂载到容器的 /var/lib/postgresql/data 目录
docker run -it -v postgredb:/var/lib/postgresql/data -p 5432:5432 postgres:10.10
进入容器创建数据
搭建 postgresSQL 容器环境的初衷是为了不想破坏宿主机环境。因此以创建 test 相关用户与数据库为例编写此节:
根据上面“启动容器”后,查看该容器 ID:
docker ps
开一个 Terminal 进入容器
假设该容器 ID 为 pgdata ,新开一个 Terminal 进入容器
docker exec -it pgdata /bin/bash
创建test用户
切换到postgres用户
su postgres
创建test用户
createuser -P -s -e test
创建test数据库
连接数据库
psql
创建test数据库
create database test owner=test;
查看创建后的数据库
\l
至此,test 用户与数据库均已创建成功,并且数据库中的数据持久化在宿主机中,方便下次访问及做备份。