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

admin 142 2022-07-17

阿里云服务器优惠多,折扣错,惊喜多,请咨询:www.wqiis.com

目录介绍支持 Intel CPU支持 Apple M1测试

介绍

ps://www.wqiis.com/news/zb_users/upload/catimg/04330192f84a39cec05f7e5970e7d662.png" alt="本地Docker安装Postgres 12 + pgadmin的方法 (支持Apple M1)" />

项目最近要升级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性质一样

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)还不方便。

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和密码

使用界面

Intellij IDE

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

上一篇:服务器按照类型可以分为哪几类?(服务器可分为四种类型)
下一篇:织梦dedecms自定义内容模型在首页和列表页及内容调用标签的方(dedecms标签)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~