启用seasearch做完搜索导致seahub无法启动是什么原因

报错

Starting seafile server, please wait …
Seafile server started

Done.

Starting seahub at port 8000 …
Error:Seahub failed to start.
Please try to run “./seahub.sh start” again
Traceback (most recent call last):
File “/scripts/start.py”, line 94, in
main()
File “/scripts/start.py”, line 80, in main
call(‘{} start’.format(get_script(‘seahub.sh’)))
File “/scripts/utils.py”, line 70, in call
return subprocess.check_call(*a, **kw)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3.12/subprocess.py”, line 413, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command ‘/opt/seafile/seafile-pro-server-12.0.14/seahub.sh start’ returned non-zero exit status 1.

seafevents文件的配置 主要删除seasearch相关配置就正常

[INDEX FILES]
external_es_server = false
es_host = elasticsearch
es_port = 9200
enabled = true
interval = 10m

highlight = fvh

If true, indexes the contents of office/pdf files while updating search index

Note: If you change this option from “false” to “true”, then you need to clear the search index and update the index again. See the FAQ for details.

index_office_pdf = true

Enable file history

[FILE HISTORY]
enabled = true
suffix = md,txt,doc,docx,xls,xlsx,ppt,pptx,sdoc

[SEASEARCH]
enabled = true
seasearch_url = http://seasearch:4080
seasearch_token = ODU3MDc0NjA5QHFxLmNvbTpsbjE5ODUw
interval = 10m

env加入
COMPOSE_FILE=‘seafile-server.yml,seasearch.yml’
COMPOSE_PATH_SEPARATOR=‘,’
SEASEARCH_IMAGE=seafileltd/seasearch:0.9-latest
SS_DATA_PATH=/opt/seasearch-data
INIT_SS_ADMIN_USER=11111
INIT_SS_ADMIN_PASSWORD=1111

seasearch.yml无更改

这里的enabled = true改成false试试,感觉是两个搜索都启用了,是否有冲突

[SEASEARCH]
enabled = true
seasearch_url = http://seasearch:4080
seasearch_token = <your auth token>
interval = 10m

这里面的touken 是通过echo -n ‘用户:密码’ | base64 获取的吗
而这里面的用户和密码是不是env文件里面 这两个参数定义的?

NIT_SS_ADMIN_USER=
INIT_SS_ADMIN_PASSWORD=

是的,使用你设置的用户名和密码,然后通过base64算出一个密码,填到seasearch_token = ,同时要禁用原来的搜索
INIT_SEAFILE_ADMIN_EMAIL=
INIT_SEAFILE_ADMIN_PASSWORD=
是这两个,和你写的那两个应该是一样的,总之就是seafile网站的登录邮箱和密码

好的 谢谢好的 谢谢好的 谢谢好的 谢谢

INIT_SEAFILE_ADMIN_EMAIL=
INIT_SEAFILE_ADMIN_PASSWORD=

这两个我已经取消,原来的搜索也已经禁用,seasearch_token填入了base64算出来的密码,但seahub启动的时候也是报出和这个帖子同样的错误,是啥原因呢?

首先,需要确定您部署的是社区版还是专业版,seasearch 只支持专业版;
其次,不是指取消这两个环境变量,seasearch 默认会读取这两个变量作为管理员账密,然后通过 base64 算出一个密钥填入 seasearch_token,详细配置流程参考官方文档:seafile-manual-cn

部署的专业版,在保留那两个环境变量下,把密钥填入seasearch_token,也还是会报错

您可以尝试删除所有数据目录后按照官方文档重新部署,确保配置没有出错。

清空后重新部署了还是同样的错误,环境变量仅修改了域名,文件目录,初始账户密码,其他都是按照默认值,caddy仅修改了端口,其他都保持默认

请按照如下步骤来修改默认端口号,以 demo.seafile.com 和 5200 端口为例:

1.修改 env 文件中的 SEAFILE_SERVER_HOSTNAME 变量,带上需要修改的端口号;

2.修改 caddy.yml 中的 ports 标签,如下所示:

services:

  caddy:
    image: ${SEAFILE_CADDY_IMAGE:-lucaslorentz/caddy-docker-proxy:2.9-alpine}
    restart: unless-stopped
    container_name: seafile-caddy
    ports:
      #- 80:80
      #- 443:443
      - 5200:5200
    environment:
      - CADDY_INGRESS_NETWORKS=seafile-net
...

caddy端口号我也是这么改的,seasearch报错和这个应该是没有关系

好的,那您请按照一下模板详细描述您遇到的问题,可以把你的相关配置也贴出来:

当前服务端和客户端的操作系统及版本

操作过程(出现错误的操作步骤)

错误截图

错误日志

相关配置