lala.im:Mastodon配置全文搜索(适用于Docker安装)

運維技術·lala.im · 2021-05-24 · 134 人浏览

原文地址:https://lala.im/7888.html,請支持原作者!該處僅作轉載。

今天突然需要搜一个之前自己发过的嘟文,结果发现之前部署的Mastodon没有配置全文搜索,搜索功能无法使用。
之前也是比较懒,觉得搜索功能根本就用不上,而且es还吃内存,就没配置,结果今天就遇到这档子事。。
幸好这台机器内存有2g,除去mastodon自身大概用了1g,还有很多空闲出来,所以这里就记录下配置过程。
下面的配置是在这篇文章的基础上进行:
Docker快速部署Mastodon

编辑compose:

cd /opt/mastodon/ && nano docker-compose.yml

加入下面的配置:

  mastodon-es:
    image: docker.elastic.co/elasticsearch/elasticsearch-oss:6.8.10
    environment:
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
      - "cluster.name=es-mastodon"
      - "discovery.type=single-node"
      - "bootstrap.memory_lock=true"
    healthcheck:
      test: ["CMD-SHELL", "curl --silent --fail localhost:9200/_cluster/health || exit 1"]
    volumes:
      - ./elasticsearch:/usr/share/elasticsearch/data
    ulimits:
      memlock:
        soft: -1
        hard: -1
    restart: unless-stopped

[重要]把elasticsearch目录的用户和组改为1000,如果没有这个目录就新建:

mkdir elasticsearch
chown -R 1000:1000 elasticsearch

启动elasticsearch容器:

docker-compose up -d

确保elasticsearch容器是正常运行的状态:

範例
接下来编辑.env配置文件:

nano .env.production

加入如下配置:

ES_ENABLED=true
ES_HOST=mastodon-es # 这里的host对应compose内的services名
ES_PORT=9200

使env的配置生效:

docker-compose up -d

最后创建索引即可:

docker-compose run --rm mastodon-web bin/tootctl search deploy
運維技術 Docker lala.im
Theme Jasmine by Kent Liao