-
Choerodon平台版本: 0.16.0
-
遇到问题的执行步骤:
执行helm install agile-service -
文档地址:
-
环境信息(如:节点信息):
-
报错日志:
没有更多日志 -
原因分析:
提出您分析问题的过程,以便我们能更准确的找到问题所在
kubectl describe pod agile-service-init-config-rrqkh 时event正常
无法看到更多log -
疑问:
提出您对于遇到和解决该问题时的疑问
谢谢,这种情况该如何排查问题?
报了超时的错吗
你可以多加一个参数 --set preJob.timeout=1000
1000表示1000秒超时
嗯嗯,是否有其他日志,可帮忙定位到更具体点的问题?
安装的时候看看job有没有报错
我也有在更新的时候出现相同的问题,经过检查后发现是有如下的问题
- LiquiBase对数据库进行更新时,出现了错误,导致后续无法启动service容器
2.直接进入容器查看,一般都是出现了 Waiting for changelog lock… 的错误信息,查找一下,应该是某个表被锁住了,查询出来删除掉这个记录就ok
job没有报错,–set preJob.timeout=1000设置后没有生效,还是300s后超时了
是在init-db时候吗?还是在init-config?
我再执行下,同步看看数据库的日志,谢谢
建议后期是否可以考虑一下,直接废弃LiquiBase这种方式,转而使用dockerfile来做数据库的一些初始化操作
我出现错误是在init-db的时候,通过查看日志解决了问题,还好我以前用过LiquiBase,对于不熟悉的开发人员,还是有点难以定位的,推荐直接在dockerfile中去做init-db 的脚本执行,毕竟都9012年了
你好,可以讲解一下怎么使用Dockerfile进行数据库初始化的吗? 有demo吗?
以下是官方文档,这里给到地址
你好,这个仅仅只是 ENTRYPOINT
关键字的使用方法而已,我想了解的是在不使用LiquiBase工具进行数据库初始化的情况下使用其他什么工具可以替代LiquiBase进行数据库初始化操作?
你好,直接在这里执行你的sql脚本不就简单很多吗,而且这样更加直观
你好,这种方法虽然简单粗暴,但是后期维护起来就很麻烦,你会考虑到表创建了没有会不会重复创建,字段类型是否是自己需要的,这也是使用LiquiBase的原因;而且如果写在 ENTRYPOINT
里面,那么每次容器启动的时候都会去初始化一遍数据库,这种情况会不会出现数据库数据丢失或错乱等问题呢?我们将数据库初始化独立出来也是出于数据安全方面进行考虑的。