NeoDB(原 boofilsic)是开源的豆瓣替代项目,支持书籍/电影/音乐/播客等收藏、评分、社交,基于 Django + PostgreSQL,推荐用 Docker 一键部署。

一、准备环境

- 安装 Docker + Docker Compose(必装)

- 安装 Git

- 内存 ≥ 2GB,磁盘 ≥ 10GB 

二、一键 Docker 部署(推荐)

# 1. 克隆代码
git clone https://github.com/neodb-social/neodb.git
cd neodb
# 2. 复制环境变量模板
cp neodb.env.example .env
# 3. 编辑 .env(至少改这3项)
# SECRET_KEY=生成一个随机字符串(可在线生成)
# ALLOWED_HOSTS=localhost,127.0.0.1,你的域名
# DEBUG=False(生产环境)
# 4. 构建并启动(后台运行)
docker-compose up -d --build
# 5. 初始化数据库(首次必做)
docker-compose exec web python manage.py migrate
docker-compose exec web python manage.py createsuperuser  # 创建管理员账号
# 6. 访问
http://localhost:8000

三、手动部署(不推荐,适合开发)

# 1. 安装依赖
python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate
pip install -r requirements.txt
# 2. 配置 .env(同上)
cp neodb.env.example .env
# 3. 启动 PostgreSQL(自行安装)
# 4. 初始化
python manage.py migrate
python manage.py createsuperuser
# 5. 启动开发服务器
python manage.py runserver 0.0.0.0:8000

四、关键配置(.env)

# 基础
SECRET_KEY=your-random-key
DEBUG=False
ALLOWED_HOSTS=localhost,127.0.0.1,your-domain.com
# 数据库(Docker 下默认即可)
DATABASE_URL=postgres://neodb:neodb@db:5432/neodb
# 邮件(找回密码用)
EMAIL_HOST=smtp.example.com
EMAIL_PORT=587
EMAIL_HOST_USER=your-email
EMAIL_HOST_PASSWORD=your-password
EMAIL_USE_TLS=True
# 社交登录(可选)
MASTODON_CLIENT_ID=xxx
MASTODON_CLIENT_SECRET=xxx

五、常用命令

# 查看日志
docker compose ps
docker compose --profile production logs -f
# 重启服务
docker-compose restart
# 停止服务
docker compose --profile dev down
# 备份数据库
docker-compose exec db pg_dump -U neodb neodb > backup.sql
# 运行和启动
docker compose --profile production pull
docker compose --profile production up -d


六、导入豆瓣数据

 

1. 登录 NeoDB → 个人设置 → 数据导入

2. 选择 豆瓣,按提示授权或上传 CSV

3. 等待导入完成(数据量大可能需几分钟)

 

七、常见问题

 

- 端口被占用:修改  docker-compose.yml  中  8000:8000  为  8001:8000 

- 数据库连接失败:检查  .env  中  DATABASE_URL 

- 无法发送邮件:检查邮件配置,或开启 DEBUG 用控制台输出

VAPID 工具https://knock.app/tools/vapid-key-generator