You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker Compose运行SurrealDB失败,提示local日志驱动无可用日志

解决SurrealDB 1.0.0稳定版Docker Compose日志警告问题

以下是针对该问题的具体排查和解决步骤:

  • 调整挂载目录权限
    SurrealDB 1.0.0稳定版镜像默认使用非root用户运行,若本地./db目录权限为root所有,容器内用户无法读写数据库文件或日志,导致启动失败无日志输出。执行以下命令修改目录权限:
sudo chown -R 1000:1000 ./db

修改后重新启动容器即可。若想临时验证权限问题,可在docker-compose.yml的example-db服务中添加user: root配置,启动后若正常则说明是权限问题。

  • 显式指定日志驱动
    在docker-compose.yml的服务配置中添加日志驱动设置,替换默认的local驱动为json-file,确保日志能正常输出:
example-db:
    <<: *example-app
    image: surrealdb/surrealdb:latest
    command: start --log trace --user ${DB_USER} --pass ${DB_PASS} file:/db/mydatabase.db
    volumes:
      - ./db:/db
    ports:
      - ${DATABASE_PORT}:8000
    networks:
      - example_network
    logging:
      driver: "json-file"
      options:
        max-size: "10m"
        max-file: "3"
  • 直接运行容器排查错误
    跳过Docker Compose,用docker run直接启动容器,获取更直观的启动输出,排查命令或镜像本身的问题:
docker run -it --rm -v $(pwd)/db:/db -p 8000:8000 surrealdb/surrealdb:latest start --log trace --user ${DB_USER} --pass ${DB_PASS} file:/db/mydatabase.db

替换命令中的环境变量为实际值,运行后可直接看到容器启动的详细日志,定位具体错误。

  • 确认镜像版本正确性
    显式指定1.0.0标签拉取镜像,避免latest标签缓存导致版本不符:
image: surrealdb/surrealdb:1.0.0

执行以下命令重新拉取镜像并启动:

docker-compose pull example-db && docker-compose up -d example-db

内容的提问来源于stack exchange,提问作者MRF

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 09:27:49