18.6 docker版本报错

2023-08-30 16:25:06
牧青云
  • 访问次数: 6
  • 注册日期: 2023-08-30
  • 最后登录: 2023-09-22
  • 我的积分: 96
  • 门派等级: 幽灵 等级1 幽魂

第一次安装,配置了MySQL数据库,是正常的,第二次启动时候,就报错了。内容如下:

 16:02:46.89 
 16:02:46.89 Welcome to the Easysoft ZenTao 18.6 container
 16:02:46.89 Subscribe to project updates by watching https://www.zentao.net
 16:02:46.89 Submit issues and feature requests at https://www.zentao.net/ask.html
 16:02:46.89 
 16:02:46.90 INFO  ==> Prepare persistence directories.
 16:02:46.98 INFO  ==> Render php.ini with environment variables.
 16:02:47.00 INFO  ==> Render apache sites config with envionment variables.
 16:02:47.02 INFO  ==> MySQL config file exists, skip configure.
 16:02:47.03 INFO  ==> Check whether the MySQL is available.
230830 16:02:47 mysqld_safe Logging to '/data/mysql/logs/mysql_error.log'.
230830 16:02:47 mysqld_safe Starting mariadbd daemon with databases from /data/mysql/data
 16:02:48.04 INFO  ==> MySQL is ready.
ln: failed to create symbolic link '/opt/zbox/tmp/mysql/mysql.sock': File exists


+15
沙发
2023-08-30 17:46:55
❤️️‍️️️ 禅道 闫敏
  • 访问次数: 1645
  • 注册日期: 2019-03-11
  • 最后登录: 2024-04-29
  • 我的积分: 5578
  • 门派等级: 释迦 等级6

第二次启动输入的指令是什么呢? 

我们也本地测试,并联系研发同事看下

板凳
2023-08-30 17:51:17
牧青云
  • 访问次数: 6
  • 注册日期: 2023-08-30
  • 最后登录: 2023-09-22
  • 我的积分: 96
  • 门派等级: 幽灵 等级1 幽魂

docker 版本是 24.0.5

禅道版本 18.6

执行run之后,服务器停机扩展内存。

服务器开机

docker start 禅道容器,就报这个错了。

#3
2023-08-30 18:03:59
禅道-Bee
  • 访问次数: 5159
  • 注册日期: 2017-02-22
  • 最后登录: 2024-05-20
  • 我的积分: 41314
  • 门派等级: 幽灵 等级5 天魔
关机之前建议先停止下服务。如果是新部署的,没有数据,可以重新构建一下试试,这儿我们也测试下。另外,也可以联系商务同事刘璐(QQ:2845263372),邀请加入QQ技术交流群沟通的。
#4
2023-08-31 11:10:49 回复#3
牧青云
  • 访问次数: 6
  • 注册日期: 2023-08-30
  • 最后登录: 2023-09-22
  • 我的积分: 96
  • 门派等级: 幽灵 等级1 幽魂
一样的错误,不管是什么停止方式,都会报这个错。我都是手动删除/opt/zbox/tmp/mysql/mysql.sock,才启动成功了
牧青云 最后编辑, 2023-08-31 11:14:50
#5
2023-08-31 11:26:50
❤️️‍️️️ 禅道 闫敏
  • 访问次数: 1645
  • 注册日期: 2019-03-11
  • 最后登录: 2024-04-29
  • 我的积分: 5578
  • 门派等级: 释迦 等级6
测试有重现这个问题 , 我们反馈下 

#6
2023-08-31 12:39:13 回复#2
zhouyq
  • 访问次数: 45
  • 注册日期: 2022-09-28
  • 最后登录: 2024-05-10
  • 我的积分: 219
  • 门派等级: 无门派

我们已经定位问题,容器停止后,正常的操作是把停止的容器删掉(docker rm 容器id),然后再重新运行容器(docker run),而不是直接docker start


如果容器异常停止,或者正常停止,再执行docker start,容器之前运行过程中的临时文件仍然存在,因此建议删除容器后重新运行,这样除了持久化目录外,其他的环境都是全新的。


你遇到的报错就是因为这个原因引起的,我们的镜像做一些兼容,这样可以保证在start时也可以正常启动,但我们仍然不建议这样操做。

#7
2023-08-31 16:00:52
zhouyq
  • 访问次数: 45
  • 注册日期: 2022-09-28
  • 最后登录: 2024-05-10
  • 我的积分: 219
  • 门派等级: 无门派
镜像已更新,请重新拉取最新镜像。
#8
2024-03-21 16:39:50
礼貌的枕头
  • 访问次数: 1
  • 注册日期: 2024-03-21
  • 最后登录: 2024-03-21
  • 我的积分: 85
  • 门派等级: 无门派
我已经解决,我排除到的原因是:第一次配置禅道时,引用的外部数据库的密码携带了 + ! 这种特殊字符,导致第二次启动时失败!

将外部数据库密码修改成只带字母和数字的密码,

然后去容器里面/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

 

+30
#9
2024-03-21 17:04:39
马超
  • 访问次数: 1686
  • 注册日期: 2018-06-20
  • 最后登录: 2024-05-20
  • 我的积分: 6173
  • 门派等级: 玄清 等级6 金仙
感谢反馈,我们记录下问题。
#10
2024-04-25 16:31:27
可爱的双杠
  • 访问次数: 1
  • 注册日期: 2024-04-25
  • 最后登录: 2024-04-25
  • 我的积分: 58
  • 门派等级: 无门派

今天遇到了同样的问题,执行docker restart后就报错启动不起来了。如果把容器删除是不是所有已配置的数据都没有了??


1/2 1 2