服务器之家

服务器之家 > 正文

本地Docker安装Postgres 12 + pgadmin的方法 (支持Apple M1)

时间:2021-06-22 17:15     来源/作者:Shubo Zhang

介绍

项目最近要升级Posgres数据库, 从9.6升级到12+。为了做一些migration测试,我本地要安装几个版本的Postgres,最方便的就是 用Docker安装了,没有版本冲突的问题,好管理,方便删除。

另外建议使用docker-compose,或者stack,简单说就是可以data存在本地,这样每次重新启动,数据不会丢,可以重复使用。如果 是做integration testing,则可以每次启动一个新的DB。

下面docker-compose文件里面还有pgAdmin,这样使用Postgres更方便。也可以使用自己喜欢的DB browser,我自己用IDEA(ultimate) 带的Database plugin。

 

支持 Intel CPU

我在MacOS下用了一段时间,没问题。

  • 保存成docker-compose.yml文件
  • 在文件路径下运行 docker-compose up -d

说明:

  • user和password自己随意设置
  • volumes是本地保存数据库的路径
  • ports:默认是5432。我一般喜欢改成15432,项目多了,10000下的port很拥挤
  • pgadmin的email和password是页面登陆密码
  • pgadmin的volumes和ports跟Postgres性质一样
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
version: '3.5'
 
services:
 postgres:
 container_name: pg12
 image: postgres:12
 environment:
 POSTGRES_USER: pg12
 POSTGRES_PASSWORD: pg12
 PGDATA: /data/postgres
 volumes:
 - postgres12:/Users/szhang/postgresql/pg12
 ports:
 - "5432:5432"
 networks:
 - pg12
 restart: unless-stopped
 
 pgadmin:
 container_name: pgadmin12
 image: dpage/pgadmin4
 environment:
 PGADMIN_DEFAULT_EMAIL: a@gmail.com
 PGADMIN_DEFAULT_PASSWORD: a@gmail.com
 volumes:
 - pgadmin12:/Users/szhang/postgresql/.pgadmin12
 ports:
 - "27777:80"
 networks:
 - pg12
 restart: unless-stopped
 
networks:
 pg12:
 driver: bridge
 
volumes:
 postgres12:
 pgadmin12:

 

支持 Apple M1

这个版本唯一不同在于Postgres image 是ARM版本的,专门支持最新的Apple M1芯片的电脑。另外多说一句,Apple M1电脑可以跑Docker, 但是很多Docker image还没有ARM版,所以目前用M1电脑做开发(需要docker)还不方便。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
version: '3.5'
 
services:
 postgres:
 container_name: pg12
 image: arm64v8/postgres:12.6
 environment:
 POSTGRES_USER: pg12
 POSTGRES_PASSWORD: pg12
 PGDATA: /data/postgres
 volumes:
 - postgres12:/Users/shubozhang/dev/postgresql/pg12
 ports:
 - "5432:5432"
 networks:
 - pg12
 restart: unless-stopped
 
 pgadmin:
 container_name: pgadmin12
 image: dpage/pgadmin4
 environment:
 PGADMIN_DEFAULT_EMAIL: a@gmail.com
 PGADMIN_DEFAULT_PASSWORD: a@gmail.com
 volumes:
 - pgadmin12:/Users/shubozhang/dev/postgresql/.pgadmin12
 ports:
 - "27777:80"
 networks:
 - pg12
 restart: unless-stopped
 
networks:
 pg12:
 driver: bridge
 
volumes:
 postgres12:
 pgadmin12:

 

测试

pgAdmin

登陆,使用docker-compose里面的email和密码

本地Docker安装Postgres 12 + pgadmin的方法 (支持Apple M1)

使用界面

本地Docker安装Postgres 12 + pgadmin的方法 (支持Apple M1)

Intellij IDE

使用用户名,密码,和端口就可以链接了。

本地Docker安装Postgres 12 + pgadmin的方法 (支持Apple M1)

到此这篇关于本地Docker安装Postgres 12 + pgadmin (支持Apple M1)的文章就介绍到这了,更多相关Docker安装Postgres 内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://shubozhang.github.io/posts/tools/pg12/

标签:

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
2021德云社封箱演出完整版 2021年德云社封箱演出在线看
2021德云社封箱演出完整版 2021年德云社封箱演出在线看 2021-03-15
返回顶部