针对xxl-job中的No such file or directory问题:
本人xxljob使用的是docker部署并挂载。
由于xxl-job的logpath默认为:/data/applogs/xxl-job/jobhandler
不知为什么尝试了各种方法,包括文件夹赋权限、创建文件夹、docker容器内赋权限等等。。。都无法解决!
直到看到了github作者的issues有人尝试将logpath路径修改为不需要权限的其他路径。例如:/tmp/data/applogs/xxl-job/jobhandler。就解决了这个问题。
附修改后的yaml文件:
xxl:
job:
admin:
addresses: http://xxxxx{自己的地址}/xxl-job-admin
accessToken: default_token
executor:
appname: {自己的}
address:
ip:
port: 9999
logpath: /tmp/data/applogs/xxl-job/jobhandler
logretentiondays: 30
以及docker命令:
docker run -u 0 -e PARAMS="--spring.datasource.url=jdbc:mysql://xxxx/xxl_job?useSSL=false&useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai --spring.datasource.username=root --spring.datasource.password=root --xxl.job.accessToken=default_token" -p 8088:8080 -v /dockerData/xxl-job/logs:/tmp/data/applogs --name xxl-job-admin --privileged=true -d xuxueli/xxl-job-admin:2.4.0
可以肯定的是文件夹权限的问题,但是赋权限却没有用。有完美解决的大佬请踢我一脚。