docker 运行postgresql fastgpt的本地手动部署及远程数据库数据查看

首先要拉取 pq的image:

docker pull postgres

,
拉取后可以用 

docker image ls

查看是否拉取镜像成功。
同理,一同拉取pgadmin4方便查看数据:

docker pull dpage/pgadmin4 

然后运行image,生成container,运行pq和pgadmin:
注意,因为数据库需要存储空间,配合docker运行就需要volume,注意下方两种volume创建方式:

docker run -d -p 5432:5432 --name postgresql -v pgdata:/var/lib/postgresql/data -e POSTGRES_PASSWORD=pass123 postgres

--name 将postgresql 这个名字分配给这个实例,可以用这个直接启动容器,
-d 是detached模式运行,-p是映射端口,--name为container命名,
-v 是创建名为pgdata的volume,-e 是创建环境变量 。

或者 先创建volume

docker volume create postgres-volume 


再创建pq container:

docker run -d --name=postgres13 -p 5432:5432 -v postgres-volume:/var/lib/postgresql/data -e POSTGRES_PASSWORD=your_password postgres

-v 把容器挂载到刚创建好的volume上,

-d 将以分离模式运行此容器,以便它在后台运行。
--name 将名称“postgres13”分配给您的容器实例名字,通过这个名字以后可以直接启动
-p会将 PostgreSQL 容器端口 5432 绑定到主机上的相同端口,外部通过5432这个命令可以直接访问
-v选项将容器内的目录/var/lib/postgresql绑定到postgres-volume上,保证你以后的数据不会丢失
-e设置环境变量。在这种情况下,PostgreSQL表示容器的密码

用 

docker ps

可以查看容器是否正常运行
如果不正常运行, 

docker logs 容器名

可以查看日志。

然后开启一个pgadmin 容器实例,这样可以通过web平台管理数据库:

docker run -d -p 5433:80 --name pgadmin4 -e PGADMIN_DEFAULT_EMAIL=test@123.com -e PGADMIN_DEFAULT_PASSWORD=123456 dpage/pgadmin4

打开浏览器访问pgadmin4:http://localhost:5433/
账户密码分别是 运行pgadmin时候设置的,
进入pgadmin 的dashboard知乎,创建服务器:

名字按照需要取一个:

主机地址写:host.docker.internal ,因为运行在docker里边,不能写localhost,

用户名填写postgres,因为默认username是postgres,密码根据创建pq时候填写的-e设置的环境变量来,

当然我们也可以使用fastgpt本身提供的docker-compose文件

version: '3.3'
services:
  mongodb:
    image: mongo:6.0.4
    container_name: mongodb
    restart: always
    privileged: true
    ports:
      - 27017:27017
    environment:
      - MONGO_INITDB_ROOT_USERNAME=admin
      - MONGO_INITDB_ROOT_PASSWORD=123456
    volumes:
      - /root/mongo/data:/data/db
      - /root/mongo/logs:/var/log/mongodb
      - /etc/localtime:/etc/localtime:ro
      - /root/mongo/conf:/data/conf
  pg:
    image: ankane/pgvector:v0.4.2
    container_name: pg
    restart: always
    ports:
      - 8100:5432
    environment:
      # 这里的配置只有首次运行生效。修改后,重启镜像是不会生效的。需要把持久化数据删除再重启,才有效果
      - POSTGRES_USER=admin
      - POSTGRES_PASSWORD=123456
      - POSTGRES_DB=supergpt
    volumes:
      # 刚创建的文件
      - /root/pg/init.sql:/docker-entrypoint-initdb.d/init.sh
      - /root/pg/data:/var/lib/postgresql/data
      - /etc/localtime:/etc/localtime:ro

此处操作主要还是方便大家学习pg数据的基础操作和查看数据库内部的数据。

  • 5
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值