尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

pgrust 安装教程:Docker 一键启动你的第一个 Rust 版 PostgreSQL

pgrust 安装教程:Docker 一键启动你的第一个 Rust 版 PostgreSQL pgrust 安装教程Docker 一键启动你的第一个 Rust 版 PostgreSQL【免费下载链接】pgrustPostgres rewritten in Rust, now faster than Postgres and Clickhouse项目地址: https://gitcode.com/GitHub_Trending/pg/pgrustpgrust 是一个用 Rust 语言从零重写 PostgreSQL 的开源数据库项目兼容 PostgreSQL 18.3并通过了超过 46000 条回归测试查询官方目标是让事务负载提速 50%、分析型负载提速约 300 倍。本文是一份面向新手的 pgrust 安装教程手把手教你用 Docker 一键启动 Rust 版 PostgreSQL全程无需编译源码几分钟即可跑通。pgrust 是什么为什么值得一试简单来说pgrust 就是把大家熟悉的 PostgreSQL 数据库引擎用 Rust 重新实现了一遍✅ 兼容 PostgreSQL 18.3输出与官方保持一致46000 条回归查询✅ 磁盘格式兼容可以直接挂载已有的 PostgreSQL 18.3 数据目录✅ 发挥 Rust 内存安全与性能优势事务负载快 50%分析型负载快约 300 倍✅ Docker 镜像与官方 postgres 镜像无缝互换使用习惯几乎一模一样对新手最友好的一点是pgrust 的 Docker 镜像完全复刻了官方 postgres 镜像的用法POSTGRES_PASSWORD、POSTGRES_USER等环境变量全部通用几乎零学习成本。安装前的准备2 个前提条件开始之前先确认环境满足以下要求检查项要求Docker已安装并正常运行执行docker --version确认端口本机 5432 端口未被占用网络可正常访问镜像仓库拉取镜像确认无误后就可以进入下面的 Docker 安装步骤了。方法一推荐Docker 一键启动最快的 pgrust 安装方式就是直接拉取官方镜像并运行。打开终端执行docker run -d --name pgrust \ -e POSTGRES_PASSWORDsecret \ -p 5432:5432 \ malisper/pgrust:v0.1命令说明-d --name pgrust后台运行并给容器命名为 pgrust-e POSTGRES_PASSWORDsecret设置超级用户 postgres 的密码-p 5432:5432把容器内 5432 端口映射到本机稍等片刻用docker ps看到容器状态为 Up就说明你的第一个 Rust 版 PostgreSQL 已经启动成功了 方法二本地构建 pgrust 镜像如果想从源码构建镜像比如验证最新代码可以先把仓库克隆到本地再执行构建git clone https://gitcode.com/GitHub_Trending/pg/pgrust cd pgrust docker build -t pgrust .构建完成后用同样的方式启动docker run -d --name pgrust \ -e POSTGRES_PASSWORDsecret \ -p 5432:5432 \ pgrust镜像采用三段式构建编译 pgrust 二进制 → 获取 psql 客户端与系统目录文件 → 组装运行镜像构建逻辑可以直接查看仓库根目录的Dockerfile入口脚本是docker/entrypoint.sh详细说明见docker/README.md。整个镜像里只有 pgrust 服务器和一个 psql 客户端完全没有 C 版 postgres数据目录初始化由 pgrust 自带的--initdb驱动完成。关键环境变量与官方 postgres 镜像完全一致pgrust 镜像刻意保留了官方 postgres 镜像的契约以下环境变量全部通用环境变量作用默认值POSTGRES_PASSWORD超级用户密码必填无POSTGRES_USER超级用户名postgresPOSTGRES_DB初始创建的数据库名与 POSTGRES_USER 相同PGDATA数据目录位置/var/lib/postgresql/dataPOSTGRES_HOST_AUTH_METHOD连接认证方式trust另外首次启动时镜像会自动执行/docker-entrypoint-initdb.d/目录下的初始化脚本支持.sql、.sh、.sql.gz等格式可以把建表语句或初始化数据放进去非常方便。连接并验证 Rust 版 PostgreSQL容器启动后用 psql 连接并执行一条查询来验证psql postgres://postgres:secretlocalhost:5432/postgres \ -c select version(), 1 1 as two看到返回 PostgreSQL 版本信息就说明连接成功。也可以直接进入容器内使用 psqldocker exec -it -e PGPASSWORDsecret pgrust \ psql -h 127.0.0.1 -U postgres 小提示当前版本在 TCP 连接上默认使用 trust 认证密码已写入系统目录但暂不强制校验随着项目迭代会逐步完善密码认证机制。数据持久化挂载数据卷默认情况下容器删除后数据也会消失。想持久化保存数据启动时挂载一个数据卷即可docker run -d --name pgrust \ -e POSTGRES_PASSWORDsecret \ -p 5432:5432 \ -v pgdata:/var/lib/postgresql/data \ malisper/pgrust:v0.1这样即使容器被删除重建数据依然保留在pgdata卷中后续升级镜像也无需重新初始化数据库。常见问题FAQQ1端口被占用怎么办把-p 5432:5432改成其他端口例如-p 5433:5432连接时把端口对应改成 5433 即可。Q2连不上 / 忘记密码用docker logs pgrust查看启动日志确认容器是否完成了初始化也可以删除容器重新用-e POSTGRES_PASSWORD新密码启动。Q3pgrust 现在能用于生产环境吗目前项目仍处于快速迭代阶段官方明确表示尚未达到生产就绪标准。建议先在开发、测试环境体验并持续关注后续版本发布。总结本文带你完整走了一遍 pgrust 安装教程通过 Docker 一键启动、本地构建镜像、配置环境变量、验证连接以及数据持久化。pgrust 作为 Rust 重写 PostgreSQL 的代表项目兼容性46000 条回归查询和性能潜力都相当亮眼是值得持续关注的开源数据库新秀。现在就动手用 Docker 启动你的第一个 Rust 版 PostgreSQL 吧【免费下载链接】pgrustPostgres rewritten in Rust, now faster than Postgres and Clickhouse项目地址: https://gitcode.com/GitHub_Trending/pg/pgrust创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表