Linux 使用 docker 下搭建xunsearch 搜索引擎服务
Linux
使用 docker
下搭建 xunsearch 搜索引擎服务
- 安装
docker
环境(菜鸟教程有说明) - 下载并运行
xunsearch
的服务端:docker安装xunsearch说明docker
安装完毕后,开始安装xunsearch
镜像
docker pull hightman/xunsearch
- 启动镜像
//镜像非开机自启
docker run --name xunsearch -d -p 8383:8383 -p 8384:8384 -v /var/xunsearch/data:/usr/local/xunsearch/data hightman/xunsearch:latest
//镜像开机自启 此外要配置 docker 服务开机自启动
添加容器在docker运行时自动启有两种方法
1.在使用docker run时,添加下面参数
--restart=always
2.在运行docker的时候添加
docker update --restart=always 容器id
开始使用,以
YII2
为例:composer
安装:composer require hightman/xunsearch
安装说明生成配置文件,可根据文档自己手写一份,配置文件简单清晰。我的配置:
user_id name 1 张三 2 李四 3 王五 ... ... project.name = user
project.default_charset = utf-8
server.index = 8383
server.search = 8384 [user_id]
type = id [name]
index = self
tokenizer = default
这里只使用了用户id和名称
创建索引
<?php
namespace console\helper; use Yii; class UserXunSearch
{ /**
* 创建文档
* createDoc
*/
public static function createDoc()
{
try { $userData = []; //数据自己查一下 /**
* @var $xunSearch \hightman\xunsearch\ConnectionYII2,
*/
$xunSearch = Yii::$app->xunsearch; $db = $xunSearch->getDatabase('user');
$db->charset = 'UTF-8';
$db->createDoc(); foreach ($userData as $user){
//添加文档 http://www.xunsearch.com/doc/php/guide/index.add
$db->add([
'user_id' => $user['user_id'],
'name' => $user['name'],
]);
} return true; }catch (\Exception $e){
Yii::error($e->getMessage());
return false;
}
} /**
* 搜索内容
* search
* @param $keyword
* @return bool|\XSDocument[]
*/
public static function search($keyword)
{
try {
/**
* @var $xunSearch \hightman\xunsearch\Connection
*/
$xunSearch = Yii::$app->xunsearch; $db = $xunSearch->getDatabase('user'); return $db->xs->getSearch()
->setQuery('name:'.$keyword) // 构建搜索语句 http://www.xunsearch.com/doc/php/guide/search.query
->search(); }catch (\Exception $e){
Yii::error($e->getMessage());
return false;
}
} }
- 插件很友善了提供了AR操作,小中型项目确实是不错的选择。
Linux 使用 docker 下搭建xunsearch 搜索引擎服务的更多相关文章
- Docker+Gogs搭建个人Git服务
欢迎 经常使用Github的我,Github它功能强大,操作简单,不用FQ,所以大家会使用Github进行代码托管,但是,Github的私仓收费的,而且对于普通个人用户来说,价格也不便宜.很多人搭建自 ...
- 实战maven私有仓库三部曲之三:Docker下搭建maven私有仓库
本章是<实战maven私有仓库>系列的第三篇,在前两章中,我们先在linux搭建maven私有仓库,然后在开发环境使用此仓库,本章我们在docker下快速搭建maven私有仓库,然后像前面 ...
- kali linux 2.0下搭建DVWA渗透测试演练平台
DVWA (Dam Vulnerable Web Application)DVWA是用PHP+MySQL编写的一套用于常规WEB漏洞教学和检测的WEB脆弱性测试程序.包含了SQL注入.XSS.盲注等常 ...
- 在Docker下搭建MySQL双主双重集群(单机展示,与多机原理一致)
前言 Docker的安装部署&在Docker下MySQL的安装与配置 https://www.cnblogs.com/yumq/p/14253360.html 在Docker进行单机主从复制M ...
- 在Linux的Eclipse下搭建Android环境
http://blog.csdn.net/lyonte/article/details/6407242 一.Java环境安装配置详见<在Linux下搭建Java环境>http://blog ...
- docker下搭建owncloud
在ubuntu下 搭建owncloud 用docker-compose启动,owncloud.yml文件内容 owncloud: image: owncloud: restart: always 开机 ...
- [转载] linux、Solaris下xdmcp远程桌面服务
原文链接 http://youlvconglin.blog.163.com/blog/static/52320420106243857254/ 使用图形界面远程登录linux和Solaris,首先要在 ...
- docker下搭建fastfds
https://blog.csdn.net/weixin_40247263/article/details/81087726 搭建过程参考 作者 https://me.csdn.net/feng_qi ...
- docker下搭建fastfds集群版
搭建过程参考 作者 https://me.csdn.net/feng_qi_1984 的课程视频 声明:集群版是在我之前写的单机版基础之上进行搭建的,我将安装了fastfds单机版的docker打包成 ...
随机推荐
- mysql多种备份与恢复方式一
基于mysql社区版5.7,严重声明:本文中图方便直接写入了-p数据库密码,在生产环境中如果指定了一定要使用history -C清空历史命令记录哦,所有博客作者原创纯手打,转载一定要注明本博客链接,感 ...
- CSPS模拟 87
考场上思考量不可减少 否则分数秒变弟弟,考后秒变弱智 T1 二分答案.打的稍恶心 T2 线段树维护“如果我在这个点开枪,前方点的贡献有多大” 想明白了就很好理解了 另外已经飞过去八千里的鸟还输入进来干 ...
- js清除节点内容(改变标签元素)
<!DOCTYPE HTML><html> <head> <meta http-equiv="Content-Type" c ...
- 正睿OI集训游记
什么嘛....就是去被虐的... 反正就是难受就是了.各种神仙知识点,神仙题目,各式各样的仙人掌..... 但是还是学会了不少东西...... 应该是OI生涯最后一次集训了吧.... 这次的感言还是好 ...
- js设置Date
function getDate (yyyy, MM, dd) { let t = new Date() t.setFullYear(yyyy) t.setMonth(Number(MM) - 1) ...
- linux cmake安装方法
linux cmake安装方法 OpenCV 2.2以后的版本需要使用Cmake生成makefile文件,因此需要先安装cmake:还有其它一些软件都需要先安装cmake 1.在linux环境下打开网 ...
- Vue学习笔记:Vue组件的核心概念(下)
1.双向绑定和单向数据流: 本质上还是单向数据流 视图<——>数据 v-model:仅仅是一个简写,用更少代码去实现功能. 自定义事件 .sync 修饰符 2.虚拟DOM及KEY属性作用 ...
- java编程思想第四版第十一章习题
第一题 package net.mindview.holding.test1; import java.util.ArrayList; import java.util.List; /** * 沙鼠 ...
- HTML中的表格标签
表格是网页制作中使用最多的工具之一,在制作网页时,使用表格可以更清晰地排列数据.但是在实际制作过程中,表格更多用在网页布局的定位上.很多网页都是以表格布局的.这是因为表格在文本和图像的位置控制方面 ...
- mysql中int、bigint、smallint、tinyint 长度
mysql中int.bigint.smallint.tinyint 长度 bigint -2^63 (-9223372036854775808) 到 2^63-1 (92233720368547758 ...