设置 trac wiki
本文档描述了如何设置 trac.edgewall.org trac wiki。
本教程中的值和示例
本教程中使用的值 tracadmin
、example.com
、secret
以及各种路径和项目名称仅为示例。在大多数情况下,您可以将它们更改为适合您的内容。
基本的 Trac 安装和配置
安装 Trac
更新 apk 仓库并安装 trac
# apk add trac
创建项目环境
我们需要初始化一个新的环境
# trac-admin /var/lib/trac/myproject initenv
- 在提示时输入一些项目名称
- 保留默认 sqlite DB(只需按回车键)
配置身份验证/安全性
创建密码文件
最初,您需要手动创建一个包含此信息的密码文件
# echo -n "tracadmin:example.com:" > /var/lib/trac/myproject/users.htdigest
- echo -n "tracadmin:example.com:secret"
如果您好奇文件看起来是什么样子,请运行以下命令
# cat /var/lib/trac/myproject/users.htdigest
(您应该看到类似 tracadmin:example.com:72842d9ffe3f4f63306a06756d2953ee
的内容)
分配管理员权限
接下来是为您的 tracadmin
帐户授予管理员权限
# trac-admin /var/lib/trac/myproject permission add tracadmin TRAC_ADMIN
测试独立服务器
让我们测试一下您的密码文件和其他配置是否按预期工作。
如果出现问题,此测试将为您提供有关问题所在的提示。
# tracd --port 80 --auth=*,/var/lib/trac/<i>myproject</i>/users.htdigest,<i>example.com</i> /var/lib/trac/<i>myproject</i>
尝试使用 Web 浏览器连接到 trac,地址为 http://ip.of.the.box
如果它按预期工作,您可以终止上述命令(在启动命令的终端中使用 CTRL+C)并继续阅读本教程。
配置/启动
启动配置
需要编辑 /etc/conf.d/tracd 以便 tracd
启动。
内容 /etc/conf.d/tracd
vi /etc/conf.d/tracd
文件/文件夹权限
为 tracd
用户设置文件/文件夹权限。
# chown -R tracd:tracd /var/lib/trac
手动启动
现在是启动您的 trac 的时候了。
# rc-service tracd start
(此时您应该能够使用指向 http://ip.of.the.box
的 Web 浏览器浏览您的 tracd)
在下次启动时自动启动
使其在启动期间启动。
# rc-update add tracd
保存您的配置
现在是确保您的配置保持永久性的好时机。您不会希望在下次重启时丢失所有内容。
根据您设置 alpine 主机的方式,此过程会有所不同。
从 CD 运行时
如果您是从 CD 运行 alpine (就像我在编写本教程时一样),您可能需要将您的配置保存到 USB 存储器。
但是为了备份 /var/lib/trac 项目,您需要告诉 apk 复制正在运行的项目。(有关如何创建此类脚本的详细信息,请参阅Alpine local backup#Execute a script as part of a backup)
简而言之:我们创建了具有以下内容的 /etc/lbu/pre-package.d/tracd
内容 /etc/lbu/pre-package.d/tracd
然后我们使脚本可执行
# chmod +x /etc/lbu/pre-package.d/tracd
从 HDD 安装运行时
当使用 HDD 安装的 alpine 时,所有内容都写入 HDD,因此您无需采取任何额外的步骤来永久保存它(除非您可能想要进行备份以防 HDD 损坏)。
完成基本 trac 系统的安装
如果您只想拥有一个基本的 trac 系统,那么您现在已经达到了目标。
从现在开始的一切或多或少都是可选的。
如果您不太着急,我建议您继续阅读下文 - 您可能会发现一些有用的东西!
备份
要创建活动 TracEnvironment 的备份,只需运行
# trac-admin /var/lib/trac/myproject hotcopy /path/to/backupdir
其他配置和修改
高级设置
/var/lib/trac/myproject/conf/trac.ini 包含您可能想要浏览的各种设置。
为了使这些更改生效,您需要重启 tracd
# rc-service tracd restart
运行单个或多个项目
多个项目
按照上面 创建项目环境 和 配置身份验证/安全性 部分中提到的步骤来创建一个新项目。
您可能还需要更改新创建的项目的权限 - 有关详细信息,请参阅 文件/文件夹权限 部分。
接下来,您需要修改 /etc/conf.d/tracd 以便在您的 trac 服务器上运行多个项目。
我个人只是添加了一行新的 TRACD_OPTS
指向我的新项目
内容 /etc/conf.d/tracd
当以 single-env
运行时,您将自动路由到您的 trac 项目,而不是显示可用项目的列表。
安装有用的插件 (trac hacks)
先决条件
为了安装 trac-hacks,您需要安装一些额外的应用程序。
# apk add py-setuptools subversion python-dev
apk del
卸载上述软件包以释放内存。如果某些其他程序需要它们,您会注意到并且您将被阻止卸载该软件包。
安装期间
在安装 trac hack 期间,您可能会收到有关某些证书有效性的提示。接受它以继续安装。
应用 trac hack 之后
当安装 trac hack 后,您需要重启 tracd,然后才能开始配置和使用它。
# rc-service tracd restart
配置 trac hack
当 trac hack 安装完成并且 tracd 重启后,您可以浏览到 tracd 并使用您的 tracadmin
帐户登录。
您应该在菜单中看到一个 [Admin] 选项。
从“Admin”控制台中,您将在“Administration”菜单中找到“Plugins”。
开始管理您的插件(在修改/配置各种 trac hacks 时,您很可能需要查阅 https://trac-hacks.org)。
Account Manager 插件
Account Manager 插件用于通过使用 tracd 界面来管理帐户,而不是像安装 trac 时那样手动修改 users.htdigest 文件 (https://trac-hacks.org/wiki/AccountManagerPlugin)
# easy_install-2.7 https://trac-hacks.org/svn/accountmanagerplugin/0.11
TracGit
用于 Trac 0.12 的 GIT 版本控制插件 (https://trac-hacks.org/wiki/GitPlugin)
# easy_install-2.7 https://github.com/hvr/trac-git-plugin/tarball/master
TracTags
用于标记各种页面/工单/等的有用插件。您可以使用“标签”来查找和排序您的信息 (https://trac-hacks.org/wiki/TagsPlugin)
# easy_install-2.7 https://trac-hacks.org/svn/tagsplugin/tags/0.6
在您安装插件、重启 tracd
并激活插件组件后,您需要通过发出以下命令来升级您的项目
# trac-admin /var/lib/trac/myproject upgrade
其他
有 很多 各种插件。
查看 https://trac-hacks.org/wiki#Hacks 以找到适合您需求的东西。
版本控制
Trac 可以使用 subversion 或 git 进行版本控制。
Subversion 仓库

我们需要安装 subversion
# apk add subversion
创建一个 svn 仓库
# mkdir /var/lib/subversion # svnadmin create /var/lib/subversion/<i>myproject</i>
接下来,我们需要告诉 trac 查看/显示此仓库。