Sign inSign up

easysoft/zincsearch

By easysoft

Updated about 3 years ago

Image
1

2.2K

easysoft/zincsearch repository overview

QuickOn ZincSearch 应用镜像

GitHub Workflow Status Docker Pulls Docker Image Size GitHub tag

申明: 该软件镜像是由QuickOn打包。在发行中提及的各自商标由各自的公司或个人所有,使用它们并不意味着任何从属关系。

快速参考

一、关于 ZincSearch

Zinc 是一款支持全文索引的搜索引擎。是 Elasticsearch 的轻量级替代品,只需要很少的资源就可以运行。它使用 bluge 作为底层索引库。

它非常简单且易于操作,而 Elasticsearch 需要几十个概念与配置来理解和调整,Zinc 可以在 2 分钟内启动和使用它。

如果您只是使用 API 获取数据并使用 kibana 进行搜索,它是 Elasticsearch 的直接替代品(Zinc 不支持 Kibana。Zinc 提供了自己的 UI)。

screenshots

ZincSearch官网:https://zincsearch.com/

1.1 为什么使用Zinc

虽然 Elasticsearch 是一个非常好的产品,但它很复杂,需要大量资源,并且已有十多年的历史。 我们构建了 Zinc,这样人们就可以更轻松地使用全文搜索索引,而无需做很多工作。

1.2 特性

  • 提供全文索引功能
  • 用于安装和运行的独立二进制文件。 支持多平台运行。
  • 用 Vue 编写的数据的 Web UI用于数据查询。
  • 与 Elasticsearch API 兼容以获取数据(单记录和批量 API)
  • 开箱即用的身份验证
  • Schema less - 无需预先定义模式,同一索引中的不同文档可以有不同的字段。
  • 支持磁盘中的索引存储(默认)、s3 或 minio(实验性)
  • 聚合支持

二、支持的版本(Tag)

由于版本比较多,这里只列出最新的5个版本,更详细的版本列表请参考:可用版本列表

三、获取镜像

推荐从 Docker Hub Registry 拉取我们构建好的官方Docker镜像。

docker pull easysoft/zincsearch:latest

如需使用指定的版本,可以拉取一个包含版本标签的镜像,在Docker Hub仓库中查看 可用版本列表

docker pull easysoft/zincsearch:[TAG]

四、持久化数据

如果你删除容器,所有的数据都将被删除,下次运行镜像时会重新初始化数据。为了避免数据丢失,你应该为容器提供一个挂在卷,这样可以将数据进行持久化存储。

为了数据持久化,你应该挂载持久化目录:

  • /data 持久化数据

如果挂载的目录为空,首次启动会自动初始化相关文件

$ docker run -it \
    -v $PWD/data:/data \
docker pull easysoft/zincsearch:latest

或者修改 docker-compose.yml 文件,添加持久化目录配置

services:
  ZincSearch:
  ...
    volumes:
      - /path/to/persistence:/data
  ...

五、环境变量

变量名默认值说明
EASYSOFT_DEBUGfalse是否打开调试信息,默认关闭
GIN_MODErelease默认生产模式
DEFAULT_ADMIN_USERadmin默认管理员名称
DEFAULT_ADMIN_PASSWORDpass4Zinc默认管理员密码

六、运行

6.1 单机Docker-compose方式运行
# 启动服务
make run

# 查看服务状态
make ps

# 查看服务日志
docker-compose logs -f zincsearch

说明:

  • 启动成功后,打开浏览器输入 http://<你的IP>:8080 访问管理后台
  • 默认用户名:admin,默认密码:pass4Zinc
  • VERSION 文件中详细的定义了Makefile可以操作的版本
  • docker-compose.yml
6.2 本地测试

添加一条记录

curl \
  -u admin:pass4Zinc \
  -XPUT \
  -d '{"QuickOn":"渠成软件百宝箱"}' \
  http://localhost:8080/api/myfirstindex/_doc

打开浏览器,通过UI页面查看创建的记录是否存在。

七、版本升级

容器镜像已为版本升级做了特殊处理,当检测数据(数据库/持久化文件)版本与镜像内运行的程序版本不一致时,会进行数据库结构的检查,并自动进行数据库升级操作。

因此,升级版本只需要更换镜像版本号即可:

修改 docker-compose.yml 文件

...
  zincsearch:
-    image: easysoft/zincsearch:0.2.8-20220701
+    image: easysoft/zincsearch:0.2.9-20220822
    container_name: zincsearch
...

更新服务

# 是用新版本镜像更新服务
docker-compose up -d

# 查看服务状态和镜像版本
docker-compose ps

Tag summary

Content type

Image

Digest

sha256:65c7105ef

Size

53.7 MB

Last updated

about 3 years ago

docker pull easysoft/zincsearch