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

Docker-PostgresSQL的更多相关文章

  1. Nginx+PHP7.3.9 Docker镜像制作

    最近因项目需要制作了多个版本的php docker镜像,制作过程可谓是一波三折,因基于yum的方式安装php的方式在安装扩展插件时很不方便,不容易找到插件对应的yum源,所以PHP在docker镜像中 ...

  2. docker——容器安装tomcat

    写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...

  3. Docker笔记一:基于Docker容器构建并运行 nginx + php + mysql ( mariadb ) 服务环境

    首先为什么要自己编写Dockerfile来构建 nginx.php.mariadb这三个镜像呢?一是希望更深入了解Dockerfile的使用,也就能初步了解docker镜像是如何被构建的:二是希望将来 ...

  4. Docker 第一篇--初识docker

    已经多年不写博客, 看完<晓松奇谈>最后一期猛然觉醒, 决定仔细梳理下自己这几年的知识脉络. 既然决定写, 那么首先就从最近2年热门的开源项目Docker开始.Docker 这两年在国内很 ...

  5. 在docker中运行ASP.NET Core Web API应用程序(附AWS Windows Server 2016 widt Container实战案例)

    环境准备 1.亚马逊EC2 Windows Server 2016 with Container 2.Visual Studio 2015 Enterprise(Profresianal要装Updat ...

  6. docker for mac 学习记录

    docker基本命令 docker run -d -p 80:80 --name webserver nginx 运行容器并起别名 docker ps 展示目前启动的容器 docker ps -a 展 ...

  7. scrapy爬虫docker部署

    spider_docker 接我上篇博客,为爬虫引用创建container,包括的模块:scrapy, mongo, celery, rabbitmq,连接https://github.com/Liu ...

  8. [原][Docker]特性与原理解析

    Docker特性与原理解析 文章假设你已经熟悉了Docker的基本命令和基本知识 首先看看Docker提供了哪些特性: 交互式Shell:Docker可以分配一个虚拟终端并关联到任何容器的标准输入上, ...

  9. 开发者的利器:Docker 理解与使用

    困扰写代码的机器难免会被我们安装上各种各样的开发工具.语言运行环境和引用库等一大堆的东西,长久以来不仅机器乱七八糟,而且有些相同的软件还有可能会安装不同的版本,这样又会导致一个项目正常运行了,却不小心 ...

  10. 使用python自动生成docker nginx反向代理配置

    由于在测试环境上用docker部署了多个应用,而且他们的端口有的相同,有的又不相同,数量也比较多,在使用jenkins发版本的时候,不好配置,于是想要写一个脚本,能在docker 容器创建.停止的时候 ...

随机推荐

  1. 1658: Easier Done Than Said?

    1658: Easier Done Than Said? Time Limit: 1 Sec  Memory Limit: 64 MBSubmit: 15  Solved: 12[Submit][St ...

  2. linux or msys2设置网络代理

    在文件 .bashrc 中添加 export http_proxy="proxy IP:port" 如 export http_proxy="192.168.0.1:80 ...

  3. Python-DB接口规范

    threadsafety 线程安全级别.threadsafety 这是一个整数, 取值范围如下: 0:不支持线程安全, 多个线程不能共享此模块 1:初级线程安全支持: 线程可以共享模块, 但不能共享连 ...

  4. SQLyog连接数据库 提示错误plugin caching_sha2_password could not be loaded

    1.打开mysql cmd 2.执行语句 ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; # ...

  5. 使用Auto Layout中的VFL(Visual format language)--代码实现自动布局

    使用Auto Layout中的VFL(Visual format language)--代码实现自动布局 2014-12-09 10:56 编辑: zhiwupei 分类:iOS开发 来源:机智的新手 ...

  6. PAT 乙级 1041

    题目 题目地址:PAT 乙级 1041 题解 这道题学到的东西恰好和1037中学到的东西相互补充,总结如下: 在之前的博文中我曾提到过——“结构体在函数内部对数据的操作不能赋给主函数中的实参,函数内部 ...

  7. 记服务器 httpd 服务无法启动

    httpd 服务无法重启 ,网上查到的资料都是端口号冲突 ,记录一下自己的解决办法 !!! 首先查看 服务状态 :  service status httpd / systemctl status h ...

  8. 【OS_Linux】三大文本处理工具之grep命令

    grep(global search regular expression(RE) and print out the line,整行搜索并打印匹配成功的行 语法:grep  [选项]   搜索词  ...

  9. (4)zabbix监控第一台服务器

    2. zabbix监控服务器 创建主机,选择模板以及录入基本信息,过一分钟左右,就可以看到cpu.内存.硬盘等等使用情况.本节以图文为主.by the way, zabbix中文翻译很烂,config ...

  10. inotify+rsync sersync+rsync实时同步服务

    中小型网站搭建-数据实时的复制-inotify/sersync inotify是一种强大的,细粒度的.异步的文件系统事件监控机制(软件),linux内核从2.6.13起,加入inotify支持,通过i ...