大家好,欢迎来到IT知识分享网。
大家好,又见面了,我是 GitHub 精选君!
背景介绍
在我们的开发过程中,我们经常遇到使用 MongoDB 的问题。MongoDB 曾经是一项令人惊叹的技术,让我们开发人员能够比使用关系型数据库更快地构建应用程序。然而,随着时间的推移,MongoDB 放弃了它的开源本质,将许可证更改为 SSPL,这使得许多开源项目和早期商业项目无法使用它。大多数 MongoDB 用户并不需要 MongoDB 提供的高级功能,但他们需要一个易于使用的开源文档数据库解决方案。为了填补这个空白,FerretDB 应运而生。
FerretDB 在 GitHub 有超过 7.3k Star,用一句话介绍该项目就是:“A truly Open Source MongoDB alternative”。
项目介绍
FerretDB 将 MongoDB 6.0+ 的协议查询转换为 SQL,使用 PostgreSQL 或 SQLite 作为数据库引擎。它旨在成为 MongoDB 的事实开源替代品。FerretDB 兼容 MongoDB 驱动程序和流行的 MongoDB 工具,在许多情况下可以作为 MongoDB 6.0+ 的即插即用替代品。它不断添加功能以进一步提高兼容性和性能。FerretDB 欢迎所有贡献者,你可以在我们的公共路线图、与 MongoDB 的已知差异列表以及贡献指南中获取更多信息。
如何使用
要使用 FerretDB,请按照以下步骤进行安装:
1、使用以下命令以 PostgreSQL 后端启动 FerretDB:
docker run -d --rm --name ferretdb -p 27017:27017 ghcr.io/ferretdb/all-in-one
或者,使用以下命令以 SQLite 后端启动 FerretDB:
docker run -d --rm --name ferretdb -p 27017:27017 \ -v ./data:/data/ -e FERRETDB_HANDLER=sqlite -e FERRETDB_SQLITE_URL=file:/data/ \ ghcr.io/ferretdb/all-in-one
请注意,这些命令启动的容器中包含了 FerretDB、PostgreSQL 和 MongoDB Shell,方便进行快速测试和实验。然而,这些命令并不适用于生产环境,因为容器在关闭时会丢失所有数据。要了解不会出现这些问题的指令,请参阅项目的 Docker 快速入门指南。
2、当容器运行时,你可以通过以下方式使用 FerretDB:
- 使用任何支持 MongoDB 的客户端应用程序,使用 MongoDB URI mongodb://127.0.0.1:27017/ 进行连接。
- 使用 MongoDB Shell 进行连接,只需运行 mongosh 命令。如果你没有在本地安装,可以使用如下 Docker 命令
docker exec -it ferretdb mongosh
以下是该项目 Star 趋势图(代表项目的活跃程度):
更多项目详情请查看如下链接。
开源项目地址:https://github.com/FerretDB/FerretDB
开源项目作者:FerretDB
以下是参与项目建设的所有成员:
关注我们,一起探索有意思的开源项目。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/123545.html