Docker-PostgresSQL
2024-08-23 03:51:33
Postgresql Docker安装运行
mac环境:
1、拉取官方镜像,并创建容器
zhoumatoMacBook-Pro:~ zhou$ docker search postgresql NAME DESCRIPTION STARS OFFICIAL AUTOMATED
postgres The PostgreSQL object-relational database sy… [OK]
sameersbn/postgresql [OK]
paintedfox/postgresql A docker image for running Postgresql. [OK]
orchardup/postgresql https://github.com/orchardup/docker-postgres… 45 [OK] zhoumatoMacBook-Pro:~ zhou$ docker pull postgres // 拉取官方镜像 zhoumatoMacBook-Pro:~ zhou$ docker run --name pg -e POSTGRES_PASSWORD= -p 5432:5432 -d postgres // 生成容器
解释:
run
,创建并运行一个容器;
--name
,指定创建的容器的名字;
-e POSTGRES_PASSWORD=password
,设置环境变量,指定数据库的登录口令为password
;
-p 5432:5432
,端口映射将容器的5432端口映射到外部机器的5432端口;
-d ,后台运行
postgres
,指定使用postgres
作为镜像。
2、查看容器:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
08f294e43217 postgres "docker-entrypoint.s…" minutes ago Up minutes 0.0.0.0:->/tcp pg
关键点: 可能有一些坑,最重要的一点是docker命令中参数的顺序。
例如端口映射的-p 5432:5432
的位置如果过于靠后,则会导致映射失败。
参考传送:https://blog.csdn.net/liuyueyi1995/article/details/61204205
3、连接数据库:
如果本地安装了postgres客户端:
$ psql -U postgres -h 127.0.0.1 -p
Password for user postgres:
使用容器连接:
docker exec -it pg psql -U postgres -d postgres docker exec -it pg psql -U postgres -d postgres -h 127.0.0.1 -p docker exec -it pg psql -U postgres -d postgres -h localhost -p
另外一种连接,查看容器服务的运行ip:
zhoumatoMacBook-Pro:~ zhou$ docker inspect pg |grep IPAddress
"SecondaryIPAddresses": null,
"IPAddress": "172.17.0.2",
"IPAddress": "172.17.0.2",
zhoumatoMacBook-Pro:~ zhou$ docker exec -it pg psql -U postgres -d postgres -h 172.17.0.2 -p
Password for user postgres:
psql (10.5 (Debian 10.5-.pgdg90+))
Type "help" for help. postgres=#
最新文章
- 4、解析配置文件 redis.conf、Redis持久化RDB、Redis的主从复制
- SQL SERVER 2000通过链接服务器发送邮件出现错误
- python用二进制读取文件
- 解决OX10.11.4 不能授权的问题
- Network Wars-ZOJ2676最小割+01规划
- 缓存篇~第六回 Microsoft.Practices.EnterpriseLibrary.Caching实现基于方法签名的数据集缓存
- php学习笔记:利用递归实现删除文件目录
- firefox 中碰到的一个小坑
- Golang学习 - reflect 包
- supesite 标签语法
- Sql Server 2005 开发版亲測可用下载地址
- 【转】如何在 Android 程序中禁止屏幕旋转和重启Activity
- android 轮播图
- vue 父组件向子组件传递事件/调用事件
- ES6学习笔记三
- [ovs] openvswitch 从源码编译安装
- win10下vs2015编译的程序如何运行在win7等系统(无需安装Redistributable)
- xcode查找当前程序的沙盒
- [日常] Go语言圣经--示例: 并发的Clock服务习题
- tyvj1061Mobile Service