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=#

最新文章

  1. 4、解析配置文件 redis.conf、Redis持久化RDB、Redis的主从复制
  2. SQL SERVER 2000通过链接服务器发送邮件出现错误
  3. python用二进制读取文件
  4. 解决OX10.11.4 不能授权的问题
  5. Network Wars-ZOJ2676最小割+01规划
  6. 缓存篇~第六回 Microsoft.Practices.EnterpriseLibrary.Caching实现基于方法签名的数据集缓存
  7. php学习笔记:利用递归实现删除文件目录
  8. firefox 中碰到的一个小坑
  9. Golang学习 - reflect 包
  10. supesite 标签语法
  11. Sql Server 2005 开发版亲測可用下载地址
  12. 【转】如何在 Android 程序中禁止屏幕旋转和重启Activity
  13. android 轮播图
  14. vue 父组件向子组件传递事件/调用事件
  15. ES6学习笔记三
  16. [ovs] openvswitch 从源码编译安装
  17. win10下vs2015编译的程序如何运行在win7等系统(无需安装Redistributable)
  18. xcode查找当前程序的沙盒
  19. [日常] Go语言圣经--示例: 并发的Clock服务习题
  20. tyvj1061Mobile Service

热门文章

  1. python小括号( )与中括号 [ ]
  2. strchr函数
  3. ios xmpp demo
  4. noip_最后一遍_2-图论部分
  5. leetcode-3-basic-divide and conquer
  6. Ajax四步操作
  7. Makefile文件中的sed介绍
  8. HAL——学习SysTick
  9. OpennSSL之基本了解
  10. android 之 菜单