使用现有的 bitnami/postgresql:16.3.0 镜像安装pg_roaringbitmap插件

dockerfile 复制代码
# 使用现有的 bitnami/postgresql:16.3.0 镜像作为基础
FROM bitnami/postgresql:16.3.0

USER root

# 安装构建工具和依赖项
RUN install_packages git make gcc postgresql-server-dev-all

# 克隆 pg_roaringbitmap 源码
RUN git clone https://github.com/ChenHuajun/pg_roaringbitmap.git /pg_roaringbitmap

# 编译并安装插件
RUN cd /pg_roaringbitmap && \
    make && \
    make install

# 清理构建环境
RUN rm -rf /pg_roaringbitmap && \
    apt-get remove --purge -y git make gcc postgresql-server-dev-all && \
    apt-get autoremove -y && \
    apt-get clean && \
    rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*

# 切换回非root用户
USER 1001

# 继续使用现有的 ENTRYPOINT 和 CMD
ENTRYPOINT [ "/opt/bitnami/scripts/postgresql/entrypoint.sh" ]
CMD [ "/opt/bitnami/scripts/postgresql/run.sh" ]

退出容器后,连接到 PostgreSQL 数据库,并使用 CREATE EXTENSION 命令加载插件:

sql 复制代码
psql -U postgres -d your_database -c "CREATE EXTENSION roaringbitmap;"
psql -U postgres -d your_database -c "\dx"

你应该能看到 roaringbitmap 在已安装的扩展列表中。

相关推荐
学编程的小程11 分钟前
筑牢数据安全防线——金仓数据库SQL防火墙硬核防护解析
数据库·sql
ReSearch14 分钟前
工业物联网的“瘦身”革命:Go 实现 20MB 级边缘存储,基于 LSM-Tree 的深度定制实践
数据库·go
TDengine (老段)20 分钟前
TDengine IDMP 组态面板 —— 锚点
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
hjxu201621 分钟前
简记Cursor远程连接Docker
docker·cursor
Navicat中国26 分钟前
Navicat 模式设计全解:解决数据库开发 3 大核心痛点
数据库·数据库开发·navicat·模式设计
D愿你归来仍是少年27 分钟前
Docker 基础入门指南
docker·容器
oradh31 分钟前
Oracle 19c 单机安装总结_linux8
数据库·oracle·oracle 19c·oracle安装
瀚高PG实验室31 分钟前
瀚高数据库使用IPv6连接的配置方法
数据库·瀚高数据库
pupudawang32 分钟前
mysql之联合索引
数据库·mysql
刘晨鑫132 分钟前
MySQL的初步认识和安装
数据库·mysql