一.查找 postgreSQL 的镜像文件
从 docker hub 官网搜索 postgreSQL
然后点击 Tags 查看那个版本支持 linux/arm64/v8 平台,对于 M1 芯片的电脑这个很重要!!!postgreSQL 的最新版本是支持 linux/arm64/v8 平台,故可以下载最新版本即可。
特别注意:M1 芯片下载的镜像文件必须支持 linux/arm64/v8 平台,否则创建容器时会报错。
WARNING: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested
二.下载 postgreSQL 的镜像文件
# 下载最新版本故不用指定版本号
docker pull postgres
三.创建 postgreSQL 容器
创建 /Users/wenqi/postgresql 目录,用来挂载postgreSQL的/data文件夹
/var/lib/postgresql/data
对上面的命令进行介绍:
- 以后台的方式运行实例:-d
- 配置端口映射:-p 5432:5432,将容器的5432端口映射到主机的5432端口
- 设置特权级运行的容器:--privileged=true
- 配置数据卷挂载
- -v /Users/wenqi/postgresql/data:/var/lib/postgresql/data 将容器中 /data 挂载到主机对应的 /Users/wenqi/postgresql/data 文件中
- 指定实例的名字:--name=postgresql1
- 指定创建实例的镜像:postgres
四. 进入容器后台,连接数据库
- 进入 postgresql1 后台
docker exec -it postgresql1 /bin/bash
exec:执行命令(/bin/bash)
-i:以交互模式运行容器
-t:为容器重新分配一个伪输入终端
postgresql1:实例名,也可以指定实例 ID
- 使用 psql 客户端工具连接数据库
# 创建postgressql容器时,默认创建了一个postgres库,一个postgres用户
# psql -h <ip> -p <端口> [数据库名称] [用户名称]
psql -h 127.0.0.1 -p 5432 postgres postgres
- 到这一步说明postgreSQL安装成功啦,查询所有数据库