docker中运行PostgreSQL容器

2023年7月27日

我们如何在docker中运行postgresql容器,要进过如下几个步骤就可以了。

拉取postgresql容器

 docker pull postgres:latest

 

Or  指定某个版本 

查看一个docker镜像所有版本的方法:1、进入dockerhub网站;2、搜索镜像名称;3、点击查看详情;4、点击Tags,即可看见所有的版本
注意:可能因为国内网络限制原因无法访问

要想查看镜像的版本和TAG,需要在 docker hub 查看

地址如下:https://hub.docker.com

1、进入之后,在页面左上角搜索框搜索,例如搜索redis

2、点击查看详情

3、点击Tags,即可看见所有的版本

4、找到Tags 后,就可以根据需要的版本来下载了。如tags为12的版本

 

docker pull postgres::12

使用上述命令将从 Docker Hub 存储库中提取最新可用版本的 PostgreSQL。

从 PostgreSQL 服务器 Docker 镜像运行容器
在部署之前,您需要设置一个 Docker 卷或绑定安装来持久化您的数据库。否则,当容器重新启动时,您的数据将丢失,创建数据卷命令如下

docker volume create postgres-volume

现在你的机器上有 PostgreSQL 镜像和一个用于保存数据的卷,你可以部署一个容器:

docker run -d --name=postgres -p 5432:5432 -v postgres-volume:/var/lib/postgresql/data -e POSTGRES_PASSWORD=your_password postgres

该 docker run 命令将在 Docker 容器中创建一个正在运行的 PostgreSQL 数据库,-v表示将数据库卷挂载到容器下面的那个目录上面去了

让我们分解一下这个语法。以下是该命令中每个参数的含义:

-d 将以分离模式运行此容器,以便它在后台运行。
--name 将名称“postgres”分配给您的容器实例名字,通过这个名字以后可以直接启动
-p会将 PostgreSQL 容器端口 5432 绑定到主机上的相同端口,外部通过5432这个命令可以直接访问
-v选项将容器内的目录/var/lib/postgresql绑定到postgres-volume上,保证你以后的数据不会丢失
-e设置环境变量。在这种情况下,PostgreSQL表示容器的密码

 

查看容器是否在运行,有postgres这个名字表示正在运行
docker ps

要ports有映射才开启成功,如果不成功可以查看日志,我这里改了名字

 

docker logs postgres

5.要连接可以用navicat和pgadmin,pgadmin可能更好用一些,但是有些插件要自己安装,你可以将压缩包复制进容器中,然后按照liunx那种方式进行操作就可以了。

说明,创建数据卷,和查看数据卷的目录可以方便我们更好的移动数据
首先,需要创建一个数据卷。可以使用以下命令创建数据卷:

docker volume create oraclevolume

该命令将创建一个名为 oraclevolume 的数据卷。可以使用 docker volume ls 命令来确认数据卷是否已创建。

使用命令查询数据卷的目录

 

docker volume inspect <volume-name>

该命令将输出指定数据卷的详细信息,包括该数据卷挂载到哪个容器的哪个目录上,以及在宿主机中的实际存储路径等信息。
 

没有评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注