Docker 安装Postgres和PostGIS,并制作镜像

1. 查找postgres和postgis现有的镜像和版本号

镜像搜索网站:https://docker.aityp.com/

测试使用的是postgres:15.4 和 postgis:15-3.4

2、镜像拉取

bash 复制代码
docker pull postgres:15.4

docker pull postgis/postgis:15-3.4

镜像下载完成,docker images 查看如下

3、启动容器

bash 复制代码
# 创建postgres文件夹
mkdir /home/postgres

注意:--privileged=true参数一定要加上,否则会报无权限错误。
bash 复制代码
# 启动普通postgres的镜像
docker run -it --name postgres \                                 # 创建容器名称
   --restart=always \                                            # 自动启动
   --privileged=true \                                           # 赋予容器几乎与主机相同的权限
   ALLOW_IP_RANGE=0.0.0.0/0 \                                    # 允许所有ip访问,不加非本机ip访问不了
   -e POSTGRES_USER=postgres  \                                  # postgresql 用户名
   -e POSTGRES_PASSWORD=P@ssw0rd123456 -e \                      # postgresql 密码
   -v /home/postgres/postgresql :/var/lib/postgresql \           # postgresql数据卷映射到本地环境
   -p 54321:5432                                                 # 占用服务器端口:docker内部虚拟端口
   -d postgres:15.4                                              # 使用的镜像名称:版本
bash 复制代码
# 启动带postgis的镜像
docker run --name postgis_postgres  \                            # 创建容器名称
	--restart=always \                                           # 自动启动
	--privileged=true \                                          # 赋予容器几乎与主机相同的权限
	ALLOW_IP_RANGE=0.0.0.0/0 \                                   # 允许所有ip访问,不加非本机ip访问不了
	-e POSTGRES_USER=postgres  \                                 # postgresql 用户名
	-e POSTGRES_PASSWORD=P@ssw0rd123456 \                        # postgresql 密码
	-p 54321:5432   /                                            # 占用服务器端口:docker内部虚拟端口
	-v /host/postgres/postgis:/var/lib/postgis \                 # postgis数据卷映射到本地环境
	-v /host/postgres/postgresql:/var/lib/postgresql \           # postgresql数据卷映射到本地环境
	-d postgis/postgis:15-3.4                                    # 使用的镜像名称:版本
相关推荐
小wanga10 分钟前
【Linux】网络层、数据链路层、DNS、ICMP协议、NAT技术
linux·运维·网络
最数据20 分钟前
收集了一些docker修改镜像源地址
docker·容器·镜像源·国内源地址
IT成长日记1 小时前
Ansible运行原理揭秘:如何用YAML脚本掌控数服务器?
运维·服务器·ansible·架构与原理
云上艺旅1 小时前
K8S学习之基础二十四:k8s的持久化存储之pv和pvc
学习·云原生·容器·kubernetes
千羽星弦1 小时前
Jenkins在Windows上的使用(二):自动拉取、打包、部署
运维·windows·jenkins
Ashmcracker1 小时前
Jenkins链接私有仓库Failed to connect to repository,stderr: No ECDSA...的问题
运维·jenkins·devops
嵌入式-老费1 小时前
Linux上位机开发实战(x86和arm自由切换)
linux·运维·arm开发
人间凡尔赛2 小时前
VSCode-Server 在 Linux 容器中的手动安装指南
linux·运维·服务器·docker
Sans_2 小时前
初识Docker-Compose(包含示例)
后端·docker·容器
板鸭〈小号〉2 小时前
Linux开发工具----vim
linux·运维·vim