PostgreSQL(一)环境搭建
为什么要使用Docker环境?
我们原来学习一项技术的时候,最开始的时候,最头疼的就是安装软件、并且配置环境变量等。一旦哪一步没做对,或者步骤正确但是就会出一些稀奇古怪的问题。于是就开始在搜索引擎上找各种答案、尝试、未解决、接着循环…等最终环境安装好了,学习的兴趣早就没了。
所以我非常推荐利用Docker来学习各种技术,只要镜像一拉,环境就搭好了。马上就能学习。等学完了,容器一删,干干净净,多方便
书写docker-compose.yml文件
version: "3.7" services: pgdb: # 设置容器使用内存大小限制 shm_size: 1gb image: postgres:latest # 设置容器名字 container_name: pgdb # https://docs.docker.com/compose/compose-file/#restart restart: always # 映射端口 ports: - 5432:5432 # 设置PostgreSQL Server时区,默认为GMT,官方文档 https://www.postgresql.org/docs/14/app-postgres.html#id-1.9.5.14.6.3 command: postgres -c timezone=US/Eastern # https://docs.docker.com/compose/compose-file/#long-syntax-4 volumes: - type: volume source: pgdb-data # PostgreSQL 所有的配置文件都在/var/lib/postgresql/data下 target: /var/lib/postgresql read_only: false # 配置的环境变量文件位置 https://docs.docker.com/compose/compose-file/#env_file env_file: - .env # volume声明 volumes: pgdb-data:
更多参数以及解释参考
创建.env文件
vim .env
文件内容为
POSTGRES_PASSWORD=12345 POSTGRES_USER=postgres POSTGRES_DB=postgres PGDATA=/var/lib/postgresql/data
更多其他变量参考
启动容器
docker-compose up
可以看到创建volume、创建容器、以及启动成功的信息
本机安装PgAdmin
可直接在下载对应操作系统版本
Mac OS也可以直接使用HomeBrew安装
brew search pgadmin brew install pgadmin4
利用PgAdmin连接Docker中的Postgre
-
打开pgadmin,在Dashboard中选择Add New Server Host Name为localhost 数据库为postgres 用户名为postgres 密码为12345
这几项都是定义在上述 .env 文件中的
创建表
进入容器
docker exec -it pgdb bash
连接Postgre Server
psql -U postgres
选择数据库
postgres
创建表
CREATE TABLE my_first_table (first_colume text);
查询表
dt
插入数据
INSERT INTO my_first_table (first_colume) VALUES (hello PosgreSQL);
这些数据同样可以在pgAdmin中查到
到此为止,PostgreSQL的学习环境就搭建好了
其他资源
-
,Dokcer内配置文件默认位置见官方镜像PGDATA一节说明,默认为/var/lib/postgresql/data