本地Docker安裝Postgres 12 + pgadmin的方法 (支持Apple M1)
介紹
項(xiàng)目最近要升級(jí)Posgres數(shù)據(jù)庫, 從9.6升級(jí)到12+。為了做一些migration測試,我本地要安裝幾個(gè)版本的Postgres,最方便的就是 用Docker安裝了,沒有版本沖突的問題,好管理,方便刪除。
另外建議使用docker-compose,或者stack,簡單說就是可以data存在本地,這樣每次重新啟動(dòng),數(shù)據(jù)不會(huì)丟,可以重復(fù)使用。如果 是做integration testing,則可以每次啟動(dòng)一個(gè)新的DB。
下面docker-compose文件里面還有pgAdmin,這樣使用Postgres更方便。也可以使用自己喜歡的DB browser,我自己用IDEA(ultimate) 帶的Database plugin。
支持 Intel CPU
我在MacOS下用了一段時(shí)間,沒問題。
- 保存成docker-compose.yml文件
- 在文件路徑下運(yùn)行 docker-compose up -d
說明:
- user和password自己隨意設(shè)置
- volumes是本地保存數(shù)據(jù)庫的路徑
- ports:默認(rèn)是5432。我一般喜歡改成15432,項(xiàng)目多了,10000下的port很擁擠
- pgadmin的email和password是頁面登陸密碼
- pgadmin的volumes和ports跟Postgres性質(zhì)一樣
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
這個(gè)版本唯一不同在于Postgres image 是ARM版本的,專門支持最新的Apple M1芯片的電腦。另外多說一句,Apple M1電腦可以跑Docker, 但是很多Docker image還沒有ARM版,所以目前用M1電腦做開發(fā)(需要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
使用用戶名,密碼,和端口就可以鏈接了。
到此這篇關(guān)于本地Docker安裝Postgres 12 + pgadmin (支持Apple M1)的文章就介紹到這了,更多相關(guān)Docker安裝Postgres 內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
怎樣獲取docker動(dòng)態(tài)分配的port
這篇文章給大家主要介紹了如何獲取docker動(dòng)態(tài)分配的port,文中通過分析、解決以及后續(xù)可能遇到的問題都給大家詳細(xì)介紹了,有需要的朋友們可以參考借鑒,下面來一起看看吧。2016-10-10Docker 制作鏡像Dockerfile和commit操作
這篇文章主要介紹了Docker 制作鏡像Dockerfile和commit操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-11-11詳解使用 Docker 構(gòu)建 LNMP 環(huán)境
本篇文章主要介紹了使用 Docker 構(gòu)建 LNMP 環(huán)境,詳細(xì)的介紹了配置LNMP 環(huán)境的步驟。具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-03-03Docker出現(xiàn)Cannot connect to the Docker daemon. Is the docker d
這篇文章主要介紹了Docker出現(xiàn)Cannot connect to the Docker daemon. Is the docker daemon running on this host錯(cuò)誤解決辦法的相關(guān)資料,需要的朋友可以參考下2016-12-12Docker搭建Zookeeper&Kafka集群的實(shí)現(xiàn)
這篇文章主要介紹了Docker搭建Zookeeper&Kafka集群的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08docker如何刪除<none>/dangling/懸空鏡像
這篇文章主要介紹了docker如何刪除<none>/dangling/懸空鏡像問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11CentOS8上用Docker部署開源項(xiàng)目Tcloud的教程
這篇文章主要介紹了CentOS8上用Docker部署開源項(xiàng)目Tcloud,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-01-01Docker容器開啟設(shè)置自動(dòng)啟動(dòng)的實(shí)現(xiàn)方法
通過在Docker中設(shè)置容器的默認(rèn)啟動(dòng)命令,我們可以實(shí)現(xiàn)在容器啟動(dòng)時(shí)自動(dòng)啟動(dòng)服務(wù)的功能,具有一定的參考價(jià)值,感興趣的可以了解一下2023-10-10