已解决 通过Docker安装的禅道地址栏没有zentao怎么加回来
通过Docker安装的禅道地址栏没有zentao怎么加回来
禅道版本 18.6 源码包
操作系统 CentOS
客户端浏览器 Chrome

提问者:悬赏:5 日期: 2023-08-31 17:18:14 答案:5 点击:342

获取技术支持

QQ:2692096539电话:13165050229
设置备注
答案列表
2023/08/31
这块需要调整下apache的配置文件了,或者也可以试试宿主机部署下一键安装包,默认就有二级目录/zentao/的。
2023/09/03
用Docker就是为了简化安装部署
2023/08/31
这个要修改容器里面的 httpd 的配置文件了 , 可以百度下 apache 的 Alias 配置 
2023/09/01
这个文件每次重启都会自动还原,挂载出来也一样。有没有更好的办法?
2023/09/01

我是这样解决的:

1. 把容器中的apache配置文件目录挂载出来:

docker cp zentao:/opt/zbox/etc/apache ./

2. 修改目录中的配置文件模板:

vi apache/http.conf.tpl


126 <VirtualHost *:{{APP_DEFAULT_PORT}}>
    127  ServerAdmin zentao@local.net
    128  DocumentRoot "{{DOCUMENT_ROOT}}"
    129  ServerName localhost
    130  Alias /zentao "{{DOCUMENT_ROOT}}"
    131  <Directory "{{DOCUMENT_ROOT}}">
    132    AllowOverride all
    133    Require all granted
    134  </Directory>
    135  ErrorLog "/dev/stderr"
    136  CustomLog "/dev/stdout" combined
    137 </VirtualHost>

(图片也传不上去)

修改了第130行和第131行。只有修改这个tpl文件才有用,http.conf就是由它生成出来的,每次重启都会重新生成。

3. 重启容器

此时,加不加/zentao都可以正常访问。但是点击某些菜单的时候,比如”后台“的时候,浏览器中的/zentao还是会消失掉。此时可以进行第4点。

4. 修改my.php

位于 挂载目录/zentao/config 目录下:

第14、15行。

此时虽然url加不加zentao都可以访问,但是点击菜单都是正常的了。


2023/09/03
这种改动太复杂了,最好能通过Docker环境变量配置
2023/11/20
就你这个方法管用,完美解决问题。
2023/09/01
2023/09/03
我装禅道的服务器装了其他的一些服务,我想把这些服务都用nginx代理起来,统一使用80端口访问,比如禅道访问就是:http://ip/zentao,svn服务访问就是http://ip/svn,非Docker版本的支持带zentao访问的,为什么docker不能支持呢?
2023/09/04
非docker版本如果是用的一键安装包,apache的配置文件里都是内置了Alias的重写规则的,docker版本里默认没有这个配置,需要加二级目录的话还需要手动配置下。
2023/09/04
其实通过二级域名是最合理的方式。