docker-compose创建pgsql数据库

创建PG普通数据库

version: "3.3"
services:
 postgres:
  image: postgres:12-alpine
  container_name: postgres
  restart: always
  environment:
      POSTGRES_USER: root
      POSTGRES_PASSWORD: 123456
  ports:
    - 5432:5432
  volumes:
    - ./data:/var/lib/postgresql/data

 自己构建向量数据库

FROM postgres:12-alpine

RUN apk add --no-cache --virtual .build-deps \
        build-base \
        git \
        && git clone https://gitee.com/openhubble/pgvector.git /usr/src/pgvector \
        && cd /usr/src/pgvector \
        && make \
        && make install \
        && cd / \
        && rm -rf /usr/src/pgvector \
        && apk del .build-deps

RUN echo "shared_preload_libraries = 'pgvector'" >> /usr/local/share/postgresql/postgresql.conf.sample

直接构建PG向量数据库

version: "3.3"
services:
 postgres:
  image: ankane/pgvector
  #image: registry.cn-hangzhou.aliyuncs.com/fastgpt/pgvector:v0.4.2
  container_name: postgres
  restart: always
  environment:
      POSTGRES_USER: root
      POSTGRES_PASSWORD: 123456
  ports:
    - 5432:5432
  volumes:
    - ./data:/var/lib/postgresql/data

 pg向量数据库参考资料:能否在postgres:15.3-alpine镜像上添加pgvector扩展? (volcengine.com)

### 配置 Docker Compose 文件以部署 PostgreSQL 15 为了通过 `docker-compose` 部署 PostgreSQL 15,可以创建一个简单的 `docker-compose.yml` 文件来定义服务及其依赖项。以下是完整的配置示例: #### 示例配置文件 ```yaml version: '3' services: postgres: image: postgres:15-alpine container_name: postgres_container ports: - "5432:5432" environment: POSTGRES_USER: my_user POSTGRES_PASSWORD: my_password POSTGRES_DB: my_database volumes: - pg_data:/var/lib/postgresql/data restart: always volumes: pg_data: ``` 此配置说明如下: - 使用官方的 `postgres:15-alpine` 镜像作为基础镜像[^3]。 - 定义了一个名为 `postgres` 的服务,并将其容器名称设置为 `postgres_container`。 - 将主机端口 `5432` 映射到容器内的默认 PostgreSQL 端口 `5432`。 - 设置环境变量 `POSTGRES_USER`, `POSTGRES_PASSWORD`, 和 `POSTGRES_DB` 来初始化数据库用户、密码以及初始数据库[^4]。 - 创建并挂载卷 `pg_data` 到 `/var/lib/postgresql/data` 路径下,用于持久化存储数据。 - 启用了自动重启策略 (`restart: always`)。 如果需要更复杂的场景(例如高可用性集群),则可能还需要引入其他工具和服务支持,比如 Patroni 或者 Repmgr 结合 Zookeeper/Etcd 进行管理[^5]。 对于 Swarm 模式的特定需求,则可以通过增加 `deploy` 参数来自定义副本数量以及其他高级选项,但这部分不会影响普通的单机开发测试用途下的基本功能实现[^6]。 #### 如何启动该配置? 确保已经安装好Docker Engine之后,在保存上述内容至当前目录下的 `docker-compose.yml` 文件后执行命令即可完成启动过程: ```bash docker-compose up -d ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

扰扰1994

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值