我设法在 Ubuntu 16.04 上安装了 STS 3.8.2 - 进行了大量的黑客实验。我有它的工作,但我对我的解决方案不满意。
这是我必须做的:
将 tar 文件解压缩到 /opt/sts-bundle。如果将它放在其他任何位置,例如 /opt/sts,TC 服务器将无法从 STS 启动。
使用 /opt/sts-bundle 中的文件,TC 服务器仍然无法从 STS 启动 - 权限错误。要让它工作,你需要使用 pivot-c-server 子目录的权限,基本上你需要打开你的组(运行 STS 的同一个)(安全漏洞?)。
在尝试备份所有 conf 文件时,您自己的 ~/sts-bundle 中的本地安装因“找不到文件”而失败。它仍然在 /opt/sts-bundle 中查找所有这些配置文件(只是将它们复制到 /backup)。您可以在 STS 服务器属性中更改服务器的顶级目录 - 但它仍会在 /opt/sts-bundle 中查找。似乎是硬编码的 - 不知道在哪里。因此,您必须在以 /opt/sts-bundle 为根的树中的 conf 目录中创建所有配置文件(“触摸”有效 - 创建空文件)。TC Server 仍然无法以“清理失败”错误启动 - 从详细消息中没有任何线索,哪些文件正在被“清理”。
我尝试根据 Pivotal TC Server 文档的建议创建一个非特权用户“tcserver”。我安装到 /opt/sts-bundle,同时以 tcserver 身份登录(具有 sudo 权限)。当我将 STS 用作不是“tcserver”的常规开发人员时,这将失败。无法弄清楚如何告诉 TC 服务器在与启动 STS 的用户不同的用户下运行。
我正在使用但我不满意的解决方案首先将 tar.gz 文件提取到 /opt/sts-bundle 中,如它所愿。然后将 sts-bundle 的所有者和组更改为我的 id 和我的组(与 STS UI 中使用的相同)。我对此并不满意。将属于单个开发人员的东西放在 /opt 中似乎是错误的。
我是 Linux 新手,我还有一些 Windows 习惯需要改掉。
问题是:我如何获得干净的解决方案(使用全局 /opt 目录中的“tcserver”用户安装)为不是“tcserver”的开发人员工作?tcserver 用户应该如何与开发人员(同一组?)相关联。
我是否让这个问题变得比应该的更难?我错过了什么?