18.6 docker版本报错
牧青云 |
第一次安装,配置了MySQL数据库,是正常的,第二次启动时候,就报错了。内容如下: 16:02:46.89 |
❤️️️️️ 禅道 闫敏 |
第二次启动输入的指令是什么呢? 我们也本地测试,并联系研发同事看下 |
牧青云 |
docker 版本是 24.0.5 禅道版本 18.6
执行run之后,服务器停机扩展内存。 服务器开机 docker start 禅道容器,就报这个错了。 |
禅道-Bee |
关机之前建议先停止下服务。如果是新部署的,没有数据,可以重新构建一下试试,这儿我们也测试下。另外,也可以联系商务同事刘璐(QQ:2845263372),邀请加入QQ技术交流群沟通的。
|
牧青云 |
一样的错误,不管是什么停止方式,都会报这个错。我都是手动删除/opt/zbox/tmp/mysql/mysql.sock,才启动成功了
|
❤️️️️️ 禅道 闫敏 |
测试有重现这个问题 , 我们反馈下
|
zhouyq
|
我们已经定位问题,容器停止后,正常的操作是把停止的容器删掉(docker rm 容器id),然后再重新运行容器(docker run),而不是直接docker start
你遇到的报错就是因为这个原因引起的,我们的镜像做一些兼容,这样可以保证在start时也可以正常启动,但我们仍然不建议这样操做。 |
zhouyq
|
镜像已更新,请重新拉取最新镜像。
|
礼貌的枕头
|
我已经解决,我排除到的原因是:第一次配置禅道时,引用的外部数据库的密码携带了 + ! 这种特殊字符,导致第二次启动时失败!
将外部数据库密码修改成只带字母和数字的密码, 然后去容器里面/config/my.php 这个位置去修改一下密码
Docker ps -a 找到禅道的容器,stop并且rm容器 重新启动,以官方案例填入自己的外部数据库的配置,如下: 使用外部数据库docker run -it \ -v $PWD/data:/data \ -p 80:80 \ -e MYSQL_INTERNAL=false \ -e ZT_MYSQL_HOST=<你的MySQL服务地址> \ -e ZT_MYSQL_PORT=<你的MySQL服务端口> \ -e ZT_MYSQL_USER=<你的MySQL服务用户名> \ -e ZT_MYSQL_PASSWORD=<你的MySQL服务密码> \ -e ZT_MYSQL_DB=<禅道数据库名> \ hub.zentao.net/app/zentao
|
马超 |
感谢反馈,我们记录下问题。
|
可爱的双杠
|
今天遇到了同样的问题,执行docker restart后就报错启动不起来了。如果把容器删除是不是所有已配置的数据都没有了??
|