匿名提问箱
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

57 lines
1.3 KiB

3 years ago
2 years ago
  1. # askMe
  2. 匿名提问箱
  3. ## 部署指南
  4. ### 准备工作
  5. + Python3
  6. + 若干依赖包(暂时没requirement.txt,看到缺啥装啥吧)
  7. + 在任意Mastodon站点上创建一个应用(建议用一个独立的bot账号创建应用)
  8. + 勾选至少read:accounts和write:statuses权限
  9. + "跳转URI"一项添加 \<WORK\_URL\>/askMe/auth(示例: https://closed.social/askMe/auth )
  10. + 获得应用ID、应用密钥、访问令牌,
  11. ### 配置
  12. `DOMAIN` 改为实际的mastodon站点
  13. `WORK_URL` 改为提问箱计划使用的网址
  14. `CLIENT_ID`、`CLIENT_SEC`、`token` 改为应用的id、秘钥、令牌,或写在文件中
  15. `BOT_NAME` 改为bot的username(仅影响回答内容的显示)
  16. ### 运行
  17. + 开发环境: `$ python3 ask.py`
  18. + 生产环境: 建议使用[uwsgi](https://flask.palletsprojects.com/en/2.0.x/deploying/uwsgi/)(可使用pip安装)
  19. 仅供参考的配置文件:
  20. ask.ini
  21. ```
  22. [uwsgi]
  23. wsgi-file = ask.py
  24. callable = app
  25. master = true
  26. processes = 1
  27. threads = 3
  28. chdir = /home/bots/web/askMe/
  29. socket = /tmp/ask.sock
  30. logto = /home/bots/web/log/ask.log
  31. pidfile = /home/bots/web/pid/ask.pid
  32. chmod-socket = 666
  33. ```
  34. `$ uwsgi ask.ini &` 或使用emperor管理多个ini
  35. (如果不使用emperor,建议 `$ uwsgi --touch-reload=ask.ini ask.ini &`, 修改代码后编辑ask.ini或直接`$ touch ask.ini` 自动重新加载)