首页 > 解决方案 > 如何在 docker 中运行 opengrok?

问题描述

我正在尝试遵循本教程: https ://hub.docker.com/r/opengrok/docker/

这就是我所做的:

mkdir /home/testuser/OpenGrokTest
cp -R SmallCppProject /home/testuser/OpenGrokTest/
docker pull opengrok/docker
docker run -d -v /home/testuser/OpenGrokTest/:/opengrok/src -p 8080:8080 opengrok/docker:latest

现在我可以使用 localhost:8080 访问 opengrok,它就在那里:

在此处输入图像描述

但是,如您所见,什么都没有。该项目非常小(只有 5 个 cpp 文件),我还等了大约 15 分钟“以防万一”,但没有任何改变。

我觉得这是一个非常简单的问题,但是教程没有提到任何额外的步骤,所以我不知道出了什么问题。

标签: dockeropengrok

解决方案


我在发布问题 5 分钟后解决了这个问题......但我相信这可能对将来的某人有用,因为这是一个相当大的陷阱,所以我会离开它。opengrok 教程没有任何问题,问题出在我的 SmallCppProject 中。它有 .git 目录,并且在该目录内有相对于 repo 的符号链接。这些符号链接已损坏,因为当我复制项目时,目录已更改。显然这是一个问题,因为在删除 .git 目录后,现在一切都很好。尽管我认为 opengrok 应该为此类事情“做好准备”并忽略断开的链接。

编辑: 实际上这不是关于损坏的符号链接,而是关于一般的 .git 目录,因此docker 的最新 opengrok 映像显然有问题。当前版本是 1.7.2,一般来说,如果我只是放置源代码,那么 opengrok 就可以工作,但是如果我将这些源代码添加到 git,那么 opengrok 就无法初始化。


推荐阅读