使用现有的 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 在已安装的扩展列表中。

相关推荐
无妄无望2 小时前
docker学习(4)容器的生命周期与资源控制
java·学习·docker
TDengine (老段)4 小时前
TDengine 数学函数 DEGRESS 用户手册
大数据·数据库·sql·物联网·时序数据库·iot·tdengine
TDengine (老段)4 小时前
TDengine 数学函数 GREATEST 用户手册
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
爱宇阳4 小时前
禅道社区版 Docker Compose 服务迁移教程
运维·docker·容器
安当加密5 小时前
云原生时代的数据库字段加密:在微服务与 Kubernetes 中实现合规与敏捷的统一
数据库·微服务·云原生
xzl045 小时前
docker运行Ubuntu22.04
docker
爱喝白开水a5 小时前
LangChain 基础系列之 Prompt 工程详解:从设计原理到实战模板_langchain prompt
开发语言·数据库·人工智能·python·langchain·prompt·知识图谱
想ai抽5 小时前
深入starrocks-多列联合统计一致性探查与策略(YY一下)
java·数据库·数据仓库
武子康5 小时前
Java-152 深入浅出 MongoDB 索引详解 从 MongoDB B-树 到 MySQL B+树 索引机制、数据结构与应用场景的全面对比分析
java·开发语言·数据库·sql·mongodb·性能优化·nosql
longgyy5 小时前
5 分钟用火山引擎 DeepSeek 调用大模型生成小红书文案
java·数据库·火山引擎