无法部署
1-2-3 opened this issue · 4 comments
虽然作者写了很详细的 readme,但我怀疑究竟有几个人能成功部署,更别提还要自己翻墙,我要收回我的小星星。欢迎部署成功的大佬来打我脸。
部署过程中遇到的坑有:
docker-lemp
和JAVClub_core
项目的docker-compose.yml
文件里都没有配置 port 映射,导致容器外部无法访问。docker-lemp
项目的my.cnf
文件里面配置了user=mysql
导致/var/lib/mysql/mysql.sock
文件因权限问题无法使用,改成user=root
可解决。- 还得自己建数据库用户和表结构......
- 早点儿说还得翻墙我就不折腾了......
对点回答好了
- port 映射是用来将容器开放给公网访问的,而编排容器内部可以直接通过容器名访问,不需要手动开放端口
- 本项目的使用 MySQL 的方式为通过端口直接访问,并不使用
Unix Socket
访问 - 这个在 phpmyadmin 的帮助下也不是什么难事..
- 目前需要科学上网是因为使用了 JAVBus 以及 Google Drive 的服务,如果不希望这样的话可以自行编写其它网盘的 Driver 或使用 Cloudflare Workers 搭建反代程序
被卡的地方:
1,数据库还原不认识编码utf8_0900_ai_ci(已解决)
2,不管是使用docker-lemp还是自己安装lnmp套件,都无法连接到数据库,
报错,The promise rejected with the reason:
2020-04-29T18:29:03.970492165Z Error: connect ECONNREFUSED 127.0.0.1:3306(保证数据库和密码等都填写正确)
3,在添加数据库google drive参数时,连接google drive的时候多了一个【path_ase_secret】, 不明白这个是什么,怎么样获取
4,添加用户的时候,token怎么写? 猫滚键盘,乱输入吗?
5,fetcher 是首先安装还是最后安装,逻辑是,RSS--获取种子--搜寻javbus--下载内容--上传google drive--ffmepg--在线播放, 不知道对不对? 所以core和数据库必须最先安装了哦?但是readme是最先装fetcher
6,cloudflare workers是必须的吗? 如果我的服务器放境外,那个proxy参数设置为什么?
没能完成,所以不知道后面还有什么错误,
已经请喝咖啡~ 感谢xiaolin !!
-
都无法连接到数据库
如果是使用文档中写的 Docker-LEMP 套件的话,MySQL 的地址应该是mysql
而不是127.0.0.1
,这个具体可以去看一下 Docker 基本架构
如果是使用自建的数据库,然后JAVClub/core
运行在 Docker 容器中,那 MySQL 的地址应该填写你服务器的 IP
-
path_ase_secret
这个是为了防止有人搞事而加的,具体作用是用来保密视频/图片的 fileid (Google Drive 的文件标识符),具体拼接方法可以看这
如果不想弄清楚的话只需要保证这里填的密钥和之后部署 Workers 时用的一样即可 -
添加用户的时候,token怎么写? 猫滚键盘,乱输入吗
乱输入即可,成功登陆之后更改密码即可自动重新生成 -
关于 fetcher
fetcher 是用来爬取网络上的资源的,并没有说谁先谁后的问题,只是如果不提前安装好 fetcher 那 core 也没有数据可以读取
具体逻辑是这样
fetcher: 爬取->下载->处理(识别番号/分镜+按 hash 整理成目录)->上传至 Google Drive
core: 读取 Google Drive 文件列表->导入 MySQL 数据库
所以说 fetcher 是完全可以独立运行的,fetcher 与 core 沟通的途径只有 Google Drive -
cloudflare workers
主要是用于代理 Google Drive 中的文件(因为 Google Drive 没有免鉴权直链这种东西)
现在的 core 只是用来存储所有视频的元数据,视频/老版 fetcher 的分镜都是存在 Google Drive 上面
所以访问链长这样:
core --提供视频/图片链接--> 用户 --请求视频/图片--> Workers --通过鉴权过的 API 从 Google Drive 中提取文件--> Google Drive
This issue is closed due to not being active. Please feel free to open it again or create a new one and reference this if you have further questions.