docker部署xxl-job-admin出现数据库拒绝问题如何解决

数据库   发布日期:2023年06月29日   浏览次数:664

本文小编为大家详细介绍“docker部署xxl-job-admin出现数据库拒绝问题如何解决”,内容详细,步骤清晰,细节处理妥当,希望这篇“docker部署xxl-job-admin出现数据库拒绝问题如何解决”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

docker部署xxl-job-admin出现数据库拒绝

问题出现:

1.拉取代码:

docker pull xuxueli/xxl-job-admin:2.3.0

2.docker部署mysql

3.部署代码:

docker run -d --link mysql:tolinkmysql -e PARAMS="--spring.datasource.url=jdbc:mysql://tolinkmysql:33061/xxl_job?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai --spring.datasource.username=root --spring.datasource.password=root --spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver" -p 8180:8080 -v /tmp:/data/applogs --name xxl-job-admin xuxueli/xxl-job-admin:2.3.0

4.问题出现logs(摘取部分错误):

// com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure // Caused by: java.net.ConnectException: Connection refused (Connection refused) // The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.

百思不得其解的是明明已经用link链接了mysql,为什么还会报数据库连接异常。但可以确信是数据库连接出了问题

5.问题的解决思路:

查看mysql容器的内部ip替换即可正常启动

docker inspect 容器名 # 查看容器IP
docker run -d -e PARAMS="--spring.datasource.url=jdbc:mysql://172.17.0.1:33061/xxl_job?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai --spring.datasource.username=root --spring.datasource.password=root --spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver" -p 8180:8080 -v /tmp:/data/applogs --name xxl-job-admin xuxueli/xxl-job-admin:2.3.0

6.总结:

解决很简单,但曾无数遍怀疑是mysql权限的问题,网络连接时长等问题,许多bolg解决方式繁而杂,静下心才是正确的思维。

扩展:docker 安装 xxl-job

1、安装mysql

创建数据库并导入数据(xxl_job)

vimtables_xxl_job.sql

不同版本的sql有些不一样,要注意

将文件上传到容器中,登录mysql,sourcetables_xxl_job.sql

#mysql -uroot -p
>sourcetables_xxl_job.sql

2、安装xxl-job-admin

下载镜像

#docker pull xuxueli/xxl-job-admin:2.3.1

启动容器

#docker run -e PARAMS="--spring.datasource.url=jdbc:mysql://192.168.59.103:3306/xxl_job?Unicode=true&characterEncoding=UTF-8 --spring.datasource.username=root --spring.datasource.password=root" -p 8080:8080 -v /tmp:/data/applogs --name xxl-job-admin --privileged=true -d xuxueli/xxl-job-admin:2.3.1

以上就是docker部署xxl-job-admin出现数据库拒绝问题如何解决的详细内容,更多关于docker部署xxl-job-admin出现数据库拒绝问题如何解决的资料请关注九品源码其它相关文章!