注意:在运行此页面上显示的命令之前,您应该通过执行installdir/use_APPNAME脚本(Linux和Mac OS X)或单击“开始 - > Bitnami APPNAME堆栈”下的“开始”菜单中的快捷方式来加载Bitnami堆栈环境。>应用程序控制台“(Windows).了解更多。 |
注意:运行此页面上显示的命令时,请将installdir占位符替换为Bitnami堆栈的完整安装目录。 |
描述
Redmine是一个流行的开源项目管理和问题跟踪平台,涵盖多个项目和子项目,每个项目和子项目都有自己的一组用户和工具,来自同一个地方.
试用OS X VM for Mac(测试版).这款新产品让您只需点击几下即可在Mac上轻松运行此应用程序.不需要VirtualBox!在此处查找更多相关信息. |
Bitnami Redmine Stack的第一步
欢迎来到您的新Bitnami应用程序!以下是您首次启动应用程序时可能需要的几个问题(和答案!).
系统要求是什么?
在下载和安装应用程序之前,请检查您的系统是否满足这些要求.
如何安装Bitnami Redmine Stack?
Windows,OS X和Linux安装程序
-
从Bitnami网站下载Bitnami Redmine Stack的可执行文件。
-
运行下载的文件:
- 在Linux上,为安装程序提供可执行权限并在控制台中运行安装文件。
- 在其他平台上,双击安装程序并按照显示的说明进行操作。
有关详细信息,请查看有关如何下载和安装Bitnami堆栈的FAQ说明.
该应用程序将安装到以下默认目录:
操作系统 | 目录 |
---|---|
视窗 | C:\Bitnami \ APPNAME-VERSION |
Mac OS X. | /应用/APPNAME-VERSION |
Linux的 | /opt/APPNAME-VERSION(以root用户身份运行) |
OS X VM
- 从Bitnami网站下载Bitnami Redmine Stack的OS X VM文件。
- 双击图像文件并将WordPress OS X VM图标拖到“应用程序”文件夹,开始安装过程。
- 双击Applications文件夹中的图标启动VM。
我需要什么证件?
您需要应用程序凭据,包括用户名和密码.这些凭据允许您登录到新的Bitnami应用程序.
为我首次登录应用程序设置的管理员用户名是什么?
- 对于Windows,Linux和OS X安装程序,您在首次安装应用程序时配置了用户名。
- 对于OS X VM,可以通过单击应用程序欢迎页面右下角的Bitnami徽章来获取用户名。
什么是管理员密码?
- 对于Windows,Linux和OS X安装程序,您在首次安装应用程序时配置了密码.
- 对于OS X VM,可以通过单击应用程序欢迎页面右下角的Bitnami徽章来获取密码.
如何启动或停止服务?
Linux的
Bitnami本机安装程序包括一个用于管理服务的图形工具。此工具在Linux上名为 manager-linux-x64.run,位于安装目录中。要使用此工具,请双击该文件,然后使用图形界面启动,停止或重新启动服务。可以在“服务器事件”选项卡中检查服务器日志消息。
本机安装程序还包括一个命令行脚本,用于启动,停止和重新启动应用程序,名为ctlscript.sh.可以在安装目录中找到此脚本,并接受选项start,stop,restart和status.要使用它,请按照以下示例登录服务器控制台并执行它:
-
无需任何服务名称即可调用它来启动所有服务:
注意:如果以root身份安装堆栈,则仅使用sudo.在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo installdir/ctlscript.sh start #installdir 为安装目录
-
仅通过将服务名称作为参数传递来使用它来重新启动特定服务 - 例如,mysql,postgresql或apache:
注意:如果以root身份安装堆栈,则仅使用sudo.在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo installdir/ctlscript.sh restart mysql sudo installdir/ctlscript.sh restart postgresql sudo installdir/ctlscript.sh restart apache
-
获取所有服务的当前状态:
installdir/ctlscript.sh status
可用服务列表因每个应用程序所需的组件而异.
Mac OS X.
Bitnami本机安装程序包括一个用于管理服务的图形工具.此工具在Mac OS X上名为manager-osx,位于安装目录中.要使用此工具,请双击该文件,然后使用图形界面启动,停止或重新启动服务.可以在“服务器事件”选项卡中检查服务器日志消息.
本机安装程序还包括一个命令行脚本,用于启动,停止和重新启动应用程序,名为ctlscript.sh.可以在安装目录中找到此脚本,并接受选项start,stop,restart和status.要使用它,请按照以下示例登录服务器控制台并执行它:
-
无需任何服务名称即可调用它来启动所有服务:
注意:如果以root身份安装堆栈,则仅使用sudo.在运行以下命令之前,请记住加载Bitnami堆栈环境(说明).
sudo installdir/ctlscript.sh start
-
仅通过将服务名称作为参数传递来使用它来重新启动特定服务 - 例如,mysql或apache:
注意:如果以root身份安装堆栈,则仅使用sudo.在运行以下命令之前,请记住加载Bitnami堆栈环境(说明).
sudo installdir/ctlscript.sh restart mysql sudo installdir/ctlscript.sh restart apache
-
获取所有服务的当前状态:
installdir/ctlscript.sh status
可用服务列表因每个应用程序所需的组件而异。
注意:如果您使用的是Mac OS X-VM的堆栈管理器,请查看以下博客文章,了解如何从其图形工具管理服务。 |
Window
Bitnami本机安装程序包括一个用于管理服务的图形工具。此工具在Windows上名为manager-windows.exe,位于安装目录中.要使用此工具,请双击该文件,然后使用图形界面启动,停止或重新启动服务.可以在“服务器事件”选项卡中检查服务器日志消息.
Windows本机安装程序创建快捷方式以启动和停止在“开始”菜单中的“程序 - > Bitnami APPNAME堆栈 - > Bitnami服务”下创建的服务,也可以从Windows“服务”控制面板管理服务器.使用APPNAMESERVICENAME格式命名服务,其中APPNAME是应用程序名称的占位符,SERVICENAME是服务名称的占位符.例如,Bitnami WordPress Stack的本机安装程序安装名为wordpressApache和wordpressMySQL的服务.
这些服务将在引导期间自动启动.要修改此行为,请参阅有关在Windows上禁用服务的部分.
如何访问管理面板?
通过浏览到http://localhost/admin访问管理面板。
如何直接从Redmine应用程序或Web浏览器中查看Subversion存储库?
注意:Bitnami Redmine Stack的Windows安装程序不再包含Subversion.此堆栈的Linux和Mac OS X安装程序继续像以前一样包含Subversion. |
Redmine允许用户检查存储库更改并链接到案例.只需在项目的“设置 - >存储库”选项卡中配置“存储库URL”即可.
SCM: Subversion
URL: http://your_repository
Login: repository_login
Password: repository_password
如何配置Redmine以与Subversion进行高级集成?
在开始本指南之前,请考虑到在Redmine应用程序中查看存储库更改不是必需的.如果您只想查看存储库更改并链接到问题,则只需配置项目存储库:“项目 - >设置 - >存储库 - > URL和控制版本系统”.
此Redmine配置用于自动存储库创建和权限管理。从v1.1.3-1开始,Redmine Stack为此配置提供了所有必需的模块。本指南已更新,可与Redmine 2.1.4配合使用。
按着这些次序:
-
确保在Apache配置文件(httpd.conf)中启用了mod_dav模块。应在下一步中提到的模块之前加载此模块。
LoadModule dav_module modules/mod_dav.so
-
在Apache配置文件中添加以下行:
LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule perl_module modules/mod_perl.so
-
您还需要将以下行添加到installdir/apache2/bin/envvars文件中(路径可能会根据版本而更改):
LD_LIBRARY_PATH="installdir/perl/lib/5.16.3/x86_64-linux-thread-multi/CORE/:$LD_LIBRARY_PATH" export LD_LIBRARY_PATH
-
将Redmine.pm文件复制到Perl modules文件夹中:
cp installdir/apps/redmine/htdocs/extra/svn/Redmine.pm installdir/perl/lib/site_perl/5.8.8/*/Apache2/
-
为存储库创建目录,例如:
mkdir installdir/repository mkdir installdir/repository/svn chown root:daemon installdir/repository/ [or "your_user:your_user" if you installed the Stack without root privileges] chown root:daemon installdir/repository/svn/ [or "your_user:your_user" if you installed the Stack without root privileges] chmod 0755 installdir/repository chmod 0750 installdir/repository/svn
-
将这些行添加到installdir/apps/redmine/conf/httpd-app.conf文件中:
PerlLoadModule Apache2::Redmine <Location /svn> DAV svn SVNParentPath "installdir/repository/svn" Order deny,allow Deny from all Satisfy any PerlAccessHandler Apache::Authn::Redmine::access_handler PerlAuthenHandler Apache::Authn::Redmine::authen_handler AuthType Basic AuthName "Redmine SVN Repository" #read-only access <Limit GET PROPFIND OPTIONS REPORT> Require valid-user Allow from all # Allow from another-ip Satisfy any </Limit> # write access <LimitExcept GET PROPFIND OPTIONS REPORT> Require valid-user </LimitExcept> ## for mysql RedmineDSN "DBI:mysql:database=bitnami_redmine;host=localhost;mysql_socket=installdir/mysql/tmp/mysql.sock" RedmineDbUser "bitnami" RedmineDbPass "bitnami_database_password" #You can find this value at installdir/apps/redmine/htdocs/config/database.yml </Location>
-
重启服务器:
注意:如果以root身份安装堆栈,则仅使用sudo.在运行以下命令之前,请记住加载Bitnami堆栈环境(说明).
sudo installdir/ctlscript.sh restart apache
-
以管理员身份登录Redmine应用程序,然后导航到“设置 - >存储库 - >启用WS以进行存储库管理”.
-
单击“生成密钥”并保存密钥.
-
在crontab中添加以下行.您可以使用命令crontab -e编辑crontab:
*/2 * * * * installdir/ruby/bin/ruby installdir/apps/redmine/htdocs/extra/svn/reposman.rb --redmine localhost:YOUR_APACHE_PORT/redmine --svn-dir installdir/repository/svn --owner root --group daemon --command="installdir/subversion/bin/svnadmin create --pre-1.6-compatible --fs-type fsfs" --url http://localhost:YOUR_APACHE_PORT/svn --key="YOUR_API_KEY" --verbose >> /var/log/reposman.log
如果已将Redmine配置为通过SSL进行访问,则可以在先前的crontab行中指定--redmine http://127.0.0.1:3001/redmine。
检查一切是否正常,从Redmine应用程序创建项目并检查/var/log/reposman.log文件。
感谢Jedbifa在Bitnami论坛上发布了完整的指南.
如何配置出站电子邮件设置?
可以在installdir/apps/redmine/htdocs/config/configuration.yml文件中配置电子邮件设置.在旧版本中,使用installdir/apps/redmine/htdocs/config/email.yml文件.
该文件包含大多数常见方案的示例配置设置,包括Gmail.要将Gmail用作SMTP服务器,请查找并取消注释Gmail设置,以便最终得到以下结果.请务必使用您计划使用的Gmail帐户的正确凭据更新user_name和密码变量.
# ==== SMTP server at using TLS (GMail)
# This might require some additional configuration. See the guides at:
# http://www.redmine.org/projects/redmine/wiki/EmailConfiguration
#
email_delivery:
delivery_method: :smtp
smtp_settings:
enable_starttls_auto: true
address: "smtp.gmail.com"
port: 587
domain: "smtp.gmail.com" # 'your.domain.com' for Google Apps
authentication: :plain
user_name: "USERNAME@gmail.com"
password: "PASSWORD"
修改配置文件后,请按照这些说明重新启动服务。
要更改电子邮件中显示的链接,请导航至“管理 - >设置 - >常规 - >主机名称和路径”部分,然后输入您的域名和端口.
有关此Redmine wiki页面和此Redmine博客文章的更多信息.
排除邮件配置问题
-
如果您收到包含“530 5.7.0必须首先发出STARTTLS命令...”的错误消息,请确保在密码行后面设置了enable_starttls_auto属性。例如:
email_delivery: delivery_method: :smtp smtp_settings: enable_starttls_auto: true address: "smtp.gmail.com" port: 587 domain: "smtp.gmail.com" # 'your.domain.com' for GoogleApps authentication: :plain user_name: "USERNAME@gmail.com" password: "PASSWORD"
-
在Redmine 2.0或更高版本中,如果您看到类似于“发送邮件时发生错误(SSL_connect返回= 1 errno = 0状态= SSLv2 / v3读取服务器问候A:未知协议)”的错误,请从中删除tls:true选项该configuration.yml文件.然后,重新启动服务.
-
如果使用不需要身份验证的SMTP服务器,则可能需要在configuration.yml文件中添加openssl_verify_mode:'none'选项.
要将应用程序配置为使用其他第三方SMTP服务来发送电子邮件,例如SendGrid或Mandrill,请参阅常见问题解答.
注意:如果您使用Gmail作为出站电子邮件服务器并且在尝试正确发送电子邮件时遇到问题,请查看如何解决Gmail SMTP问题,以了解这些问题的原因以及解决方法。 |
如何在Redmine上安装插件?
在安装插件之前,请确保该插件与您的Redmine版本兼容.对于Redmine插件目录中的插件,请检查每个插件的“兼容:”字段.
- 通过执行installdir/use_redmine脚本(Linux和Mac OS X)或单击“开始 - > Bitnami Redmine堆栈 - >应用程序控制台”(Windows)下的“开始”菜单中的快捷方式加载Bitnami堆栈环境。了解更多。
- 下载插件并将其复制到installdir/apps/redmine/htdocs/plugins.
-
如果插件需要迁移,请运行以下命令来升级数据库.建议在运行这些命令之前备份数据库.
cd installdir/apps/redmine/htdocs/ bundle install --without development test postgresql sqlite ruby bin/rake redmine:plugins RAILS_ENV=production
- 使用这些说明重启Redmine.
-
将插件复制到installdir/apps/redmine/htdocs/plugins目录后,运行以下命令:
cd installdir/apps/redmine/htdocs/ bundle install --without development test postgresql sqlite --no-deployment bundle install --without development test postgresql sqlite --deployment ruby bin/rake redmine:plugins RAILS_ENV=production
- 使用这些说明重启Redmine.
插件安装疑难解答
-
如果你在Redmine 2.4.0-0中收到这样的错误并且更好:
You are trying to install in deployment mode after changing your Gemfile. Run 'bundle install' elsewhere and add the updated Gemfile.lock to version control.
尝试按照错误消息中的建议将--no-deployment参数添加到bundle install命令.
-
如果您使用适用于Windows的Bitnami Redmine安装程序,并且您的瘦服务器在安装插件后未运行,请手动运行它们以了解错误:
- 转到Bitnami Redmine控制台:“开始 - >程序文件 - > Bitnami Redmine堆栈 - >使用Redmine”
- 转到apps/redmine/htdocs.
-
运行以下命令:
bundle exec thin start -e production -p 3001 --prefix /redmine
现在,您可以在启动服务器或通过Web浏览器访问应用程序时看到错误,网址为http://127.0.0.1:3001/redmine。
如何安装Redmine Agile插件?
手动安装Redmine Agile插件(需要免费注册).强烈建议先创建备份.备份完成后,请按照下列步骤操作:
-
将.zip文件保存在installdir/apps/redmine/htdocs/plugins目录中.在解压缩插件之前,请确保您在该目录中:
cd installdir/apps/redmine/htdocs/plugins
-
解压缩Agile插件文件(VERSION-EDITION是占位符.您的文件应包含已下载的版本和所选版本):
unzip redmine_agile_VERSION-EDITION.zip
-
删除“.zip”文件:
rm redmine_agile_VERSION_EDITION.zip
-
切换到htdocs目录并安装所需的gem:
cd installdir/apps/redmine/htdocs/ bundle install --without development test postgresql sqlite --no-deployment bundle install --without development test postgresql sqlite --deployment
-
安装和迁移Redmine Agile数据库:
bundle exec rake redmine:plugins RAILS_ENV=production bundle exec rake redmine:plugins NAME=redmine_agile RAILS_ENV=production
注意:它可能会显示有关日志生成文件的警告消息.在这种情况下,请运行以下命令:
注意:如果以root身份安装堆栈,则仅使用sudo.在运行以下命令之前,请记住加载Bitnami堆栈环境(说明).
sudo chown :bitnami log/production.log sudo chmod g+w log/production.log
-
重新启动服务以使更改生效:
注意:如果以root身份安装堆栈,则仅使用sudo.在运行以下命令之前,请记住加载Bitnami堆栈环境(说明).
sudo installdir/ctlscript.sh restart
-
登录到Redmine安装并导航到“管理 - >敏捷”部分以配置新插件。
-
导航到“项目 - >项目 - >设置 - >模块”菜单以在项目中启用Agile插件。
如何安装Redmine Custom Workflows插件?
在安装Redmine Custom Workflows插件之前,请创建一个备份.备份完成后,请按照下列步骤操作:
-
切换到Redmine插件目录并获取最新的自定义工作流程版本:
cd installdir/apps/redmine/htdocs/plugins git clone http://github.com/anteo/redmine_custom_workflows.git
-
安装插件:
cd installdir/apps/redmine/htdocs/ bundle exec rake redmine:plugins:migrate RAILS_ENV=production
注意:它可能会显示有关日志生成文件的警告消息.在这种情况下,请运行以下命令:
注意:如果以root身份安装堆栈,则仅使用sudo.在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo chown :bitnami log/production.log sudo chmod g+w log/production.log
-
重新启动服务以使更改生效:
注意:如果以root身份安装堆栈,则仅使用sudo.在运行以下命令之前,请记住加载Bitnami堆栈环境(说明).
sudo installdir/ctlscript.sh restart
-
登录到Redmine安装并导航到“管理 - >自定义工作流”部分以配置新插件.
如何创建Redmine的完整备份?
Bitnami Redmine堆栈是自包含的,执行备份的最简单选项是复制或压缩Bitnami堆栈安装目录,要以安全的方式执行此操作,您需要停止所有服务器,因此如果您有人连续访问应用程序,则此方法可能不合适.
注意:如果您只想创建数据库备份,请参阅MySQL和PostgreSQL的这些说明。 |
在Linux和Mac OS X上备份
按着这些次序:
-
切换到要保存备份的目录.
cd /your/directory
-
停止所有服务器.
注意:如果以root身份安装堆栈,则仅使用sudo.在运行以下命令之前.请记住加载Bitnami堆栈环境(说明)。
sudo installdir/ctlscript.sh stop
-
使用堆栈内容创建压缩文件.
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo tar -pczvf application-backup.tar.gz installdir
-
启动所有服务器。
注意:如果以root身份安装堆栈,则仅使用sudo.在运行以下命令之前,请记住加载Bitnami堆栈环境(说明).
sudo installdir/ctlscript.sh start
-
将application-backup.tar.gz文件下载或传输到安全位置.
您现在应该将application-backup.tar.gz文件下载或传输到安全位置.
在Windows上备份
按着这些次序:
-
使用“开始”菜单或图形管理器工具中的快捷方式停止所有服务器.
-
使用堆栈内容创建压缩文件.您可以使用7-Zip或WinZip等图形工具,或者右键单击文件夹,单击“发送到”,然后选择“压缩(压缩)文件夹”选项.
-
将压缩文件下载或传输到安全位置.
-
使用“开始”菜单或图形管理器工具中的快捷方式启动所有服务器.
在Linux和Mac OS X上还原
按着这些次序:
-
切换到包含备份的目录:
cd /your/directory
-
停止所有服务器.
注意:如果以root身份安装堆栈,则仅使用sudo.在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo installdir/ctlscript.sh stop
-
将当前堆栈移动到其他位置:
注意:如果以root身份安装堆栈,则仅使用sudo.在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo mv installdir /tmp/bitnami-backup
-
将备份文件解压缩到原始目录:
注意:如果以root身份安装堆栈,则仅使用sudo.在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo tar -pxzvf application-backup.tar.gz -C /
-
启动所有服务器.
注意:如果以root身份安装堆栈,则仅使用sudo.在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo installdir/ctlscript.sh start
重要信息:还原时,请记住保留文件和文件夹的原始权限。例如,如果您最初在Linux上以root用户身份安装堆栈,请确保还原的文件也归root所有。 |
在Windows上还原
-
切换到包含备份的目录:
cd /your/directory
-
使用“开始”菜单或图形管理器工具中的快捷方式停止所有服务器。
-
执行以下命令卸载以前的服务:
serviceinstall.bat
-
在桌面中创建一个名为Backups的安全文件夹,并将当前堆栈移动到该文件夹。请记住将PATH替换为文件夹的正确位置:
move installdir \PATH\Backups
- 使用7-Zip或Winzip等工具解压缩备份文件,或者只需双击.zip文件解压缩,然后将其移动到原始目录。
-
通过从提升的命令提示符运行以下命令来安装服务:
cd installdir serviceinstall.bat INSTALL
- 使用“开始”菜单或图形管理器工具中的快捷方式启动所有服务器。
如何升级Redmine?
强烈建议您在开始更新过程之前创建备份。如果您有重要数据,建议您创建并尝试还原备份以确保一切正常。
升级Redmine和所有堆栈组件(推荐)
您可以按照以下步骤升级应用程序和堆栈组件:
- 启动一个新的Redmine服务器。
- 将数据库备份复制到新服务器。
-
停止所有服务器并仅启动MySQL。
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo installdir/ctlscript.sh stop apache sudo installdir/ctlscript.sh stop mysql sudo installdir/ctlscript.sh start mysql
-
删除以前的数据库并创建新数据库。您可以使用安全密码配置数据库用户密码。如果数据库托管在其他服务器上,请记住添加-h选项以指定主机名。
mysql -u root -p Password: **** mysql> drop database bitnami_redmine; mysql> create database bitnami_redmine; mysql> grant all privileges on bitnami_redmine.* to 'bn_redmine'@'localhost' identified by 'DATABASE_PASSWORD';
-
恢复新数据库:
mysql -u root -p bitnami_redmine < backup.sql
-
编辑Redmine配置文件以更新installdir / apps / redmine / htdocs / config / database.yml中的数据库用户密码(与之前设置的密码相同)。
production: adapter: mysql2 database: bitnami_redmine host: localhost username: bn_redmine password: "DATABASE_PASSWORD" encoding: utf8
-
将数据库迁移到最新版本:
cd installdir/apps/redmine/htdocs/ ruby bin/rake db:migrate RAILS_ENV=production
升级故障排除
-
如果看到以下错误,请转到数据库并删除指定的表并再次运行迁移命令。
Mysql::Error: Table 'changeset_parents' already exists: CREATE TABLE `changeset_parents` (`changeset_id` int(11) NOT NULL, `parent_id` int(11) NOT NULL) ENGINE=InnoDB
运行以下命令:
mysql -u root -p mysql> use bitnami_redmine; mysql> drop table changeset_parents; cd installdir/apps/redmine/htdocs/ ruby bin/rake db:migrate RAILS_ENV=production
然后,将installdir / apps / redmine / htdocs / files目录从旧安装复制到新安装。如果你已经在以前的版本安装的插件,复制从目录提供商/插件目录复制到新的安装面积,在插件目录中。检查插件是否与新版本兼容,然后运行以下命令:
ruby bin/rake redmine:plugins RAILS_ENV="production"
清理缓存和会话。
ruby bin/rake tmp:cache:clear ruby bin/rake tmp:sessions:clear
重启服务器。
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo installdir/ctlscript.sh restart
-
如果从1.x版本升级,您会看到类似于此错误的内容:
MysqlStatement::Error Value for field `value` cannot be NULL INSERT INTO custom_value ...
转到管理面板中的自定义值,再次编辑并保存它们以解决问题。
如何创建SSL证书?
需要OpenSSL才能创建SSL证书。然后可以将证书请求发送到证书颁发机构(CA)以使其签名为证书,或者如果您拥有自己的证书颁发机构,则可以自行签名,或者您可以使用自签名证书(因为您只是想要测试证书,或者因为您正在设置自己的CA)。
按照以下步骤操作您的平台。
Linux和Mac OS X.
注意:OpenSSL通常已安装在Linux和Mac OS X上。如果未安装,请使用操作系统的软件包管理器手动安装。 |
请按照以下步骤操作:
-
生成新的私钥:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo openssl genrsa -out installdir/apache2/conf/server.key 2048
-
创建证书:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo openssl req -new -key installdir/apache2/conf/server.key -out installdir/apache2/conf/cert.csr
重要信息:当上述命令要求输入“公用名”时,请输入服务器域名。 -
将cert.csr发送到证书颁发机构。当证书颁发机构完成检查(并可能收到您的付款)时,他们会将您的新证书交给您。
-
在收到证书之前,请创建一个临时自签名证书:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo openssl x509 -in installdir/apache2/conf/cert.csr -out installdir/apache2/conf/server.crt -req -signkey installdir/apache2/conf/server.key -days 365
-
生成受密码保护的版本后,将您的私钥备份到安全位置,如下所示:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo openssl rsa -des3 -in installdir/apache2/conf/server.key -out privkey.pem
请注意,如果在Apache配置文件中使用此加密密钥,则每次Apache启动时都需要手动输入密码。从该文件重新生成没有密码保护的密钥,如下所示:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo openssl rsa -in privkey.pem -out installdir/apache2/conf/server.key
视窗
注意:Windows上通常不安装OpenSSL。在执行以下步骤之前,请下载并安装OpenSSL的二进制分发版。 |
安装OpenSSL后,请按照以下步骤操作:
-
将OPENSSL_CONF环境变量设置为OpenSSL配置文件的位置。通常,此文件位于OpenSSL安装目录的bin /子目录中。使用正确的位置替换下面命令中的OPENSSL-DIRECTORY占位符。
set OPENSSL_CONF=C:\OPENSSL-DIRECTORY\bin\openssl.cfg
-
切换到OpenSSL安装目录的bin /子目录。使用正确的位置替换下面命令中的OPENSSL-DIRECTORY占位符。
cd C:\OPENSSL-DIRECTORY\bin
-
生成新的私钥:
openssl genrsa -out installdir/apache2/conf/server.key 2048
-
创建证书:
openssl req -new -key installdir/apache2/conf/server.key -out installdir/apache2/conf/cert.csr
重要信息:当上述命令要求输入“公用名”时,请输入服务器域名。 -
将cert.csr发送到证书颁发机构。当证书颁发机构完成检查(并可能收到您的付款)时,他们会将您的新证书交给您。
-
在收到证书之前,请创建一个临时自签名证书:
openssl x509 -in installdir/apache2/conf/cert.csr -out installdir/apache2/conf/server.crt -req -signkey installdir/apache2/conf/server.key -days 365
-
生成受密码保护的版本后,将您的私钥备份到安全位置,如下所示:
openssl rsa -des3 -in installdir/apache2/conf/server.key -out privkey.pem
请注意,如果在Apache配置文件中使用此加密密钥,则每次Apache启动时都需要手动输入密码。从该文件重新生成没有密码保护的密钥,如下所示:
openssl rsa -in privkey.pem -out installdir/apache2/conf/server.key
有关证书的更多信息,请访问http://www.openssl.org。
如何使用SSL证书启用HTTPS支持?
提示:如果您希望使用Let的加密证书,您可以在我们的Let's Encrypt指南中找到使用Let的加密SSL证书启用HTTPS支持的具体说明。 |
注意:以下步骤假定您使用的是自定义域名,并且您已将自定义域名配置为指向云服务器。 |
Bitnami图像已经预先配置了SSL支持并且具有伪证书。虽然此伪证书适用于测试和开发目的,但您通常需要使用有效的SSL证书进行生产。您可以自己生成(在此处说明),也可以从商业证书颁发机构购买。
获取证书和证书密钥文件后,您需要更新服务器以使用它们。请按照以下步骤激活SSL支持:
-
使用下表确定证书和配置文件的正确位置。
变量 值 当前应用程序URL HTTPS:// [定制域] / 示例:https://my-domain.com/或https://my-domain.com/appname Apache配置文件 INSTALLDIR / apache2的/ conf目录/ bitnami / bitnami.conf 证书文件 INSTALLDIR / apache2的/ CONF / server.crt这 证书密钥文件 INSTALLDIR / apache2的/ CONF / server.key CA证书包文件(如果存在) INSTALLDIR / apache2的/ conf目录/服务器ca.crt -
将SSL证书和证书密钥文件复制到指定位置。
注意:如果对证书和密钥文件使用不同的名称,则应在相应的Apache配置文件中重新配置SSLCertificateFile和SSLCertificateKeyFile指令以反映正确的文件名。 -
如果您的证书颁发机构还为您提供了PEM编码的证书颁发机构(CA)捆绑包,则必须将其复制到上一个表中的正确位置。然后,修改Apache配置文件以包含SSLCertificateKeyFile指令下面的以下行。根据您的方案和Apache版本选择正确的指令:
变量 值 Apache配置文件 INSTALLDIR / apache2的/ conf目录/ bitnami / bitnami.conf 指令包括(Apache v2.4.8 +) SSLCACertificateFile“installdir / apache2 / conf / server-ca.crt” 包含的指令(Apache <v2.4.8) SSLCertificateChainFile“installdir / apache2 / conf / server-ca.crt” 注意:如果为CA证书捆绑包使用其他名称,则应在相应的Apache配置文件中重新配置SSLCertificateChainFile或SSLCACertificateFile指令以反映正确的文件名。 -
复制完所有服务器证书文件后,只能使用以下命令使root用户可以读取它们:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo chown root:root installdir/apache2/conf/server* sudo chmod 600 installdir/apache2/conf/server*
-
在服务器防火墙中打开端口443。有关更多信息,请参阅常见问题。
-
重新启动Apache服务器。
您现在应该可以使用HTTPS URL访问您的应用程序。
如何使用Apache强制进行HTTPS重定向?
在defaultldir / apache2 / conf / bitnami / bitnami.conf中的默认Apache虚拟主机配置文件中,在默认的VirtualHost指令中添加以下行,使其如下所示:
<VirtualHost _default_:80>
DocumentRoot "installdir/apache2/htdocs"
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/(.*) https://%{SERVER_NAME}/$1 [R,L]
...
</VirtualHost>
修改Apache配置文件后:
-
在服务器防火墙中打开端口443。有关更多信息,请参阅常见问题。
-
重新启动Apache以应用更改。
如何调试Apache错误?
一旦Apache启动,它将分别在installdir / apache2 / logs / access_log和installdir / apache2 / logs / error_log创建两个日志文件。
-
该访问日志文件是用来跟踪客户端请求。当客户端从服务器请求文档时,Apache会在此文件中记录与请求关联的多个参数,例如:客户端的IP地址,请求的文档,HTTP状态代码和当前时间。
-
在error_log中文件是用来记录重要事件。此文件包含错误消息,启动消息以及服务器生命周期中的任何其他重要事件。当您在使用Apache时遇到问题时,这是第一个查看的地方。
如果未找到错误,您将看到类似于以下内容的消息:
Syntax OK
如何查找MySQL数据库凭据?
- 数据库用户名:root。
- 数据库密码:与应用程序密码相同。了解如何获取应用程序凭据。
如何连接MySQL数据库?
您可以使用mysql客户端工具从安装它的同一台计算机连接到MySQL数据库。
mysql -u root -p
系统将提示您输入root用户密码。这与应用程序密码相同。
如何调试数据库中的错误?
主日志文件在MySQL数据库服务器主机上的installdir / mysql / data / mysqld.log中创建。
如何更改MySQL Root密码?
您可以在shell提示符下使用以下命令修改MySQL密码。将NEW_PASSWORD占位符替换为您要设置的实际密码。
installdir/mysql/bin/mysqladmin -p -u root password NEW_PASSWORD
如何重置MySQL Root密码?
如果您不记得MySQL root密码,可以按照以下步骤将其重置为新值:
-
使用下面显示的内容在/ home / bitnami / mysql-init中创建一个文件(将NEW_PASSWORD替换为您要使用的密码):
UPDATE mysql.user SET Password=PASSWORD('NEW_PASSWORD') WHERE User='root'; FLUSH PRIVILEGES;
如果您的堆栈是MySQL v5.7.x,请使用以下内容而不是上面显示的内容:
UPDATE mysql.user SET authentication_string=PASSWORD('NEW_PASSWORD') WHERE User='root'; FLUSH PRIVILEGES;
提示:使用命令installdir / mysql / bin / mysqladmin --version或installdir / mysql / bin / mysqld --version检查MySQL版本。 -
停止MySQL服务器:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo installdir/ctlscript.sh stop mysql
-
使用以下命令启动MySQL:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo installdir/mysql/bin/mysqld_safe --pid-file=installdir/mysql/data/mysqld.pid --datadir=installdir/mysql/data --init-file=/home/bitnami/mysql-init 2> /dev/null &
-
重启MySQL服务器:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo installdir/ctlscript.sh restart mysql
-
删除脚本:
rm /home/bitnami/mysql-init
如何在Windows中更改MySQL Root密码?
您可以在shell提示符下使用以下命令修改MySQL密码。将NEW_PASSWORD占位符替换为您要设置的实际密码。
installdir\mysql\bin\mysqladmin.exe -p -u root password NEW_PASSWORD
如何在Windows中重置MySQL Root密码?
如果您不记得MySQL root密码,可以按照以下步骤将其重置为新值:
- 使用图形管理器工具停止MySQL服务器。请参阅如何启动或停止服务部分。
-
检查MySQL版本:
installdir \ mysql \ bin \ mysqladmin.exe -version
- 根据您的MySQL版本创建一个名为mysql-init.txt的文件,其内容如下所示(将NEW_PASSWORD替换为您要使用的密码):
-
MySQL 5.6.x或更早版本:
UPDATE mysql.user SET Password=PASSWORD('NEW_PASSWORD') WHERE User='root'; FLUSH PRIVILEGES;
-
MySQL 5.7.x或更高版本:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NEW_PASSWORD';
-
-
使用以下命令启动MySQL服务器。请记住将PATH替换为保存mysql-init.txt文件的位置:
installdir " installdir\mysql\bin\mysqld.exe" --defaults-file=" installdir\mysql\my.ini" --init-file="\PATH\mysql-init.txt" --console
- 该--init文件选项用于执行的内容所使用的服务器的mysql-init.txt在启动文件,它会改变每一根帐户密码。
- 该--defaults文件选项指定既然你已经使用Bitnami安装程序安装了MySQL。
- 该--console选项(选装),以显示在控制台窗口,而不是在日志文件服务器输出被添加。
- 几分钟后,按Ctrl-C强制关机。
- 从图形管理器工具重新启动MySQL服务器。
- 服务器成功重启后,删除mysql-init.txt文件。
如何访问PhpMyAdmin?
Windows,Linux,Mac OS X.
您应该可以通过浏览到http://127.0.0.1/phpmyadmin直接访问phpMyAdmin 。
用户名是phpMyAdmin的root,密码是您在安装过程中指定的密码。
Mac OS X-VM
要使用Mac OS X-VM访问phpMyAdmin,您需要创建SSH隧道,如下所述:
- 在图形管理器工具上,选择“网络”选项卡。
-
单击“启用”。这会自动创建转发到端口8080的SSH隧道。
您应该可以通过浏览到http://127.0.0.1:8080/phpmyadmin直接访问phpMyAdmin 。
输入以下凭据以访问phpMyAdmin:
- 用户名:root
- 密码:bitnami1
如何修改Apache的PHP设置?
PHP配置文件允许您配置启用的模块,电子邮件设置或上载文件的大小。它位于installdir / php / etc / php.ini。
例如,要修改PHP的默认上载限制,请按照这些说明更新PHP配置文件。
修改PHP配置文件后,重新启动Apache和PHP-FPM以使更改生效:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo installdir/ctlscript.sh restart apache
sudo installdir/ctlscript.sh restart php-fpm
如何在Apache中修改上传文件的允许限制?
修改installdir / php / etc / php.ini文件中的以下选项以增加上传的允许大小:
; Maximum size of POST data that PHP will accept.
post_max_size = 16M
; Maximum allowed size for uploaded files.
upload_max_filesize = 16M
重新启动PHP-FPM和Apache以使更改生效。
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo installdir/ctlscript.sh restart apache
sudo installdir/ctlscript.sh restart php-fpm
如何配置Fail2ban以使用Redmine?
如果要限制登录尝试次数(并避免暴力攻击),请安装fail2ban并将其配置为使用Bitnami Redmine Stack。
-
安装fail2ban:
-
Debian的:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo apt-get update sudo apt-get install fail2ban
-
CentOS的:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo yum install epel-release sudo yum install fail2ban sudo systemctl enable fail2ban sudo systemctl start fail2ban
-
-
修改installdir / apps / redmine / htdocs / config / environment.rb文件以允许Redmine记录器将时间戳添加到production.log文件。为此,请添加以下行:
class Logger def format_message(severity, timestamp, progname, msg) "#{timestamp} (#{$$}) #{msg}\n" end end
-
重新启动Apache服务器。
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo installdir/ctlscript.sh restart apache
接下来,按照以下步骤配置fail2ban:
-
使用以下代码创建/etc/fail2ban/filter.d/redmine.conf文件:
[Definition] failregex = Failed [-/\w]+ for .* from <HOST> ignoreregex =
-
创建/etc/fail2ban/jail.local文件并添加以下代码:
[redmine] enabled = true filter = redmine port = http,https logpath = installdir/apps/redmine/htdocs/log/production.log maxretry = 5 findtime = 600 bantime = 600
此fail2ban配置将禁止尝试在10分钟(查找时间)内访问五个(maxretry)不同时间的任何用户的IP,但不会成功。请注意,禁令仅影响端口80和443,具有禁用IP的用户将无法在10分钟内联系Web服务器(bantime)。
-
在应用配置之前,请测试正则表达式配置是否正确。要对此进行测试,请浏览到您的Bitnami Redmine登录页面并使用不存在的用户/密码来获取登录错误。然后,运行以下命令:
fail2ban-regex installdir/apps/redmine/htdocs/log/production.log /etc/fail2ban/filter.d/redmine.conf
如果输出的最后两行显示至少“1匹配”,则正确配置正则表达式:
Lines: 412 lines, 0 ignored, 1 matched, 397 missed Missed line(s):: too many to print. Use --print-all-missed to print all 397 lines
-
使用此命令应用配置
-
Debian的:
$ sudo /etc/init.d/fail2ban restart
-
CentOS的:
$ sudo systemctl restart fail2ban
-
要检查一切是否正常,请尝试使用错误的凭据登录五次。在第五次尝试不成功时,您将被禁止10分钟。
如何将传入的电子邮件转换为Redmine中的问题?
Redmine可以配置为自动处理传入的电子邮件并将其转换为问题。为此,需要将Redmine配置为定期连接到IMAP或POP3帐户,检查传入消息并将包含Redmine关键字的消息转换为问题。
为此,请创建一个计划任务,并在crontab文件中使用以下命令获取POP3帐户,并记住使用您的邮件提供商的正确信息替换HOST,PORT,USERNAME和PASSWORD:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
*/30 * * * * sudo bundle exec rake -f installdir/apps/redmine/htdocs/Rakefile redmine:email:receive_pop3 RAILS_ENV="production" host=HOST port=PORT ssl=1 username=USERNAME password=PASSWORD allow_override=project,tracker,priority
在crontab文件中使用以下命令获取IMAP帐户,记住使用正确的邮件提供者信息替换HOST,PORT,USERNAME和PASSWORD:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
*/30 * * * * sudo bundle exec rake -f installdir/apps/redmine/htdocs/Rakefile redmine:email:receive_imap RAILS_ENV="production" host=HOST port=PORT ssl=1 username=USERNAME password=PASSWORD allow_override=project,tracker,priority
注意:如果您的邮件提供商不支持SSL,请从先前的命令中删除ssl选项。 |
以上命令将每30分钟处理一次收到的电子邮件。
要允许未在Redmine中注册的用户通过电子邮件创建问题,请更新上面的命令以添加unknown_user和no_permission_check选项。例如:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
*/30 * * * * sudo bundle exec rake -f installdir/apps/redmine/htdocs/Rakefile redmine:email:receive_pop3 RAILS_ENV="production" host=HOST port=PORT ssl=1 username=USERNAME password=PASSWORD allow_override=project,tracker,priority unknown_user=accept no_permission_check=1
要自动为特定项目和优先级注册新问题,请删除allow_override选项,而是指定项目和优先级选项。例如:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
*/30 * * * * sudo bundle exec rake -f installdir/apps/redmine/htdocs/Rakefile redmine:email:receive_pop3 RAILS_ENV="production" host=HOST port=PORT ssl=1 username=USERNAME password=PASSWORD project=myproject priority=immediate
有关可用选项的更多信息,请参阅Redmine文档。
如何在Redmine中配置计划任务?
要在Redmine中自动执行某些任务,必须设置计划任务/计算机作业。
按着这些次序:
-
运行以下命令以编辑crontab文件:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo crontab -e
-
将以下行添加到该文件中。这将配置每天00:30执行的作业。您可以根据需要修改时间,并且必须将COMMAND占位符替换为要执行的命令。
0 30 * * * COMMAND
-
保存文件。
如何配置Redmine发送提醒电子邮件?
要让Redmine自动发送提醒电子邮件,请按照上一节中的说明创建计划任务。在crontab文件中使用以下命令:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
0 30 * * * sudo installdir/ruby/bin/rake -f installdir/apps/redmine/htdocs/Rakefile redmine:send_reminders days=7 RAILS_ENV="production"
如何改变Redmine时区?
-
通过执行以下命令检查所有可用的时区:
cd installdir/apps/redmine/htdocs/ bundle exec rake time:zones:all
-
确定正确的文件后,编辑文件installdir / apps / redmine / htdocs / config / application.rb并替换该行
config.active_record.default_timezone = :local
同
config.active_record.default_timezone = 'your_timezone'
请注意,时区值附近的单引号是必要的。
-
重启服务。
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo installdir/ctlscript.sh restart apache
如何在Windows上为Redmine启用SSL证书的HTTPS支持?
除了本节中描述的步骤之外,在Windows上使用本机安装程序时,将RequestHeader选项添加到installdir / apps / redmine / conf / httpd-prefix.conf文件中:
<Proxy balancer://redminecluster
RequestHeader set X_FORWARDED_PROTO 'https'
BalancerMember http://127.0.0.1:3001/redmine
BalancerMember http://127.0.0.1:3002/redmine
</Proxy>
重新启动Apache服务器以使更改生效:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo installdir/ctlscript.sh restart apache
如何查找数据库凭据?
-
Windows,Linux,Mac OS X:
- 数据库用户名:root。
- 数据库密码:安装过程中输入的密码。
-
Mac OS X-VM:
- 数据库用户名:root。
- 数据库密码:bitnami1
如何修改最大附件大小?
- 要更改最大附件大小和允许的文件扩展名,请导航到“管理 - >设置 - >文件”菜单选项:
如何直接从Redmine应用程序或Web浏览器中查看Git存储库?
Redmine允许用户检查存储库更改并链接到案例。请按照以下步骤操作:
-
克隆远程Git存储库,或初始化新存储库。将REPO_URL占位符替换为正确的存储库URL,并使用正确的克隆存储库目录名替换REPO占位符。
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
cd $HOME mkdir repos cd repos sudo git clone REPO_URL --bare
注意:无论您是克隆现有存储库还是初始化新存储库,都应包括--bare选项。 |
-
创建一个新的Redmine项目。
-
从项目仪表板中,选择“设置 - >存储库”选项卡,然后使用以下设置添加新存储库。将ID占位符替换为存储库的短标识符,带有用户名的USER占位符,以及具有克隆存储库的正确目录名称的REPO占位符。
SCM: Git Identifier: ID Path to repository: /home/USER/repos/REPO
如何配置Redmine与Git进行高级集成?
此Redmine配置使在Redmine应用程序中创建的用户也可以使用Git存储库。例如,Redmine应用程序中的新用户也可以“推送”对Git项目存储库的更改。本指南基于Redmine Wiki上发布的Felix Schafer指南。
在开始本指南之前,如果您只想跟踪Redmine应用程序中的存储库更改,请考虑这些步骤是不必要的。如果您只希望跟踪存储库更改并链接到问题,则只需将项目配置为指向存储库。为此,请转到项目仪表板,选择“设置 - >存储库”选项卡,然后通过指定其URL和SCM添加新存储库。
-
创建一个Git存储库。本指南将在用户主目录的projects /目录下创建一个名为test的存储库。此目录应具有安装堆栈的用户帐户的写权限。请注意存储库的名称,因为您需要在稍后的步骤中使用与Redmine项目的标识符相同的名称。
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
cd $HOME mkdir projects mkdir projects/test cd projects/test sudo git init --bare
-
从GitHub下载Grack项目:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
cd installdir/apache2/htdocs/ git clone http://github.com/schacon/grack.git sudo chown USERNAME:USERNAME grack
-
编辑grack / config.ru文件以指定您的Git项目位置:
$LOAD_PATH.unshift File.expand_path(File.dirname(__FILE__) + '/lib') use Rack::ShowExceptions require 'git_http' config = { :project_root => "installdir/projects/", :adapter => Grack::GitAdapter, :git_path => 'installdir/git/bin/git', :upload_pack => true, :receive_pack => true, } run GitHttp::App.new(config)
-
测试基本行为:启动Grack服务器并尝试克隆存储库并从其他计算机推送更改。
cd installdir/apache2/htdocs/grack rackup --host 0.0.0.0 -p 8080 config.ru &
如果一切顺利,您应该看到瘦Web服务器正在运行并侦听连接的消息,如下所示:
>> Thin web server (v1.5.1 codename Straight Razor) >> Maximum connections set to 1024 >> Listening on 0.0.0.0:8080, CTRL+C to stop
重要信息:还要确保防火墙中的端口8080已打开,否则下一步将失败。 |
-
接下来,克隆存储库,添加您的名称和电子邮件地址,并从其他计算机推送更改。请记住将下面的localhost占位符替换为Redmine服务器的实际IP地址,并将EMAIL_ADDRESS和NAME占位符替换为您的电子邮件地址和真实姓名。
cd /tmp/ git clone http://localhost:8080/test cd test git config user.email "EMAIL_ADDRESS" git config user.name "NAME" echo "test" > test_file git add test_file git commit -m "test" test_file git push origin master
如果一切顺利,你会看到这样的事情:
Counting objects: 3, done.
Writing objects: 100% (3/3), 200 bytes, done.
Total 3 (delta 0), reused 0 (delta 0)
To http://localhost:8080/test
* [new branch] master -> master
-
停止Grack服务器并配置Apache以使用Passenger。首先,在grack /文件夹中创建两个目录并安装必要的依赖项:
mkdir installdir/apache2/htdocs/grack/public mkdir installdir/apache2/htdocs/grack/tmp cd installdir/apache2/htdocs/grack/ bundle install
-
编辑installdir / apache2 / conf / bitnami / bitnami.conf文件,并将代码添加到文件末尾,将YOUR_DOMAIN_NAME替换为您自己的域名或服务器的域名:
<VirtualHost *:80> ServerName git.YOUR_DOMAIN_NAME PassengerEnabled on PassengerAppRoot "installdir/apache2/htdocs/grack/" DocumentRoot "installdir/apache2/htdocs/grack/public" <Directory "installdir/apache2/htdocs/grack/public"> Options None AllowOverride None <IfVersion < 2.3 > Order allow,deny Allow from all </IfVersion> <IfVersion >= 2.3> Require all granted </IfVersion> </Directory> </VirtualHost>
-
重启Apache服务器如下:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo installdir/ctlscript.sh restart apache
-
接下来,再次克隆存储库,添加您的名称和电子邮件地址,并从其他计算机推送更改。请务必使用您自己的域名或服务器的域名替换下面的YOUR_DOMAIN_NAME占位符,并使用您的电子邮件地址和真实姓名替换EMAIL_ADDRESS和NAME占位符。
cd /tmp/ rm -rf test/ git clone http://git.YOUR_DOMAIN_NAME/test cd test git config user.email "EMAIL_ADDRESS" git config user.name "NAME" echo "test 2" > test_file_2 git add test_file_2 git commit -m "test 2" test_file_2 git push origin master
如果一切顺利,你会看到这样的事情:
Counting objects: 3, done.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (2/2), 234 bytes | 0 bytes/s, done.
Total 2 (delta 0), reused 0 (delta 0)
To http://git.YOUR_DOMAIN_NAME/test
328f124..68d1bb4 master -> master
-
下一步是使用Redmine.pm模块配置Git访问控制。首先将Redmine.pm文件复制到相应的Perl文件夹:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo cp installdir/apps/redmine/htdocs/extra/svn/Redmine.pm installdir/perl/lib/site_perl/5.16.3/x86_64-linux-thread-multi/Apache/ sudo cp installdir/apps/redmine/htdocs/extra/svn/Redmine.pm installdir/perl/lib/site_perl/5.16.3/x86_64-linux-thread-multi/Apache2/
-
通过添加以下行在installdir / apache2 / conf / httpd.conf中启用该模块:
LoadModule perl_module modules/mod_perl.so
您还需要将以下行添加到installdir / apache2 / bin / envvars文件中。请注意,下面显示的库路径(installdir / perl / lib / 5.16.3 / x86_64-linux-thread-multi / CORE /)因平台而异,因此最好验证它是否存在或根据需要进行修改。
LD_LIBRARY_PATH="installdir/perl/lib/5.16.3/x86_64-linux-thread-multi/CORE/:$LD_LIBRARY_PATH"
export LD_LIBRARY_PATH
-
最后,在installdir / apache2 / conf / bitnami / bitnami.conf文件中更新以前创建的VirtualHost,如下所示。REDMINE_DB_USERNAME和REDMINE_DB_PASSWORD凭证可以从installdir / apps / redmine / htdocs / config / database.yml文件中获取,来自生产数据库的用户名和密码字段:
<VirtualHost *:80> ServerName git.YOUR_DOMAIN_NAME PassengerEnabled on PassengerAppRoot "installdir/apache2/htdocs/grack/" DocumentRoot "installdir/apache2/htdocs/grack/public" <Directory "installdir/apache2/htdocs/grack/public"> Options None AllowOverride None <IfVersion < 2.3 > Order allow,deny Allow from all </IfVersion> <IfVersion >= 2.3> Require all granted </IfVersion> </Directory> PerlLoadModule Apache::Redmine <Location "/"> AuthType Basic AuthName "Redmine git repositories" Require valid-user PerlAccessHandler Apache::Authn::Redmine::access_handler PerlAuthenHandler Apache::Authn::Redmine::authen_handler RedmineDSN "DBI:mysql:database=bitnami_redmine;host=localhost;mysql_socket=installdir/mysql/tmp/mysql.sock" RedmineDbUser "REDMINE_DB_USERNAME" RedmineDbPass "REDMINE_DB_PASSWORD" RedmineGitSmartHttp yes </Location> </VirtualHost>
-
进行此更改后,重新启动Apache服务器,如下所示:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo installdir/ctlscript.sh restart apache
-
登录Redmine并创建一个新项目。请务必注意,此阶段配置的项目标识符必须与先前创建的存储库名称匹配。在此示例中,项目标识符是test。还要确保将项目配置为私有。
请注意,由于Redmine错误,必须将项目配置为私有才能使此配置正常工作。单击“创建”以保存更改并创建项目。
- 从Redmine中的项目仪表板中,单击“设置 - >存储库”选项卡,然后单击“新建存储库”链接。选择“SCM”作为“Git”并指定存储库的路径。在此示例中,路径将是installdir / projects / test。单击“创建”以保存更改。
- 从Redmine中的项目仪表板中,单击“设置 - >成员”选项卡,然后将一个或多个用户添加到角色为“Developer”的项目中。保存更改。
添加到存储库的用户现在应该能够使用他们的Redmine应用程序密码在测试存储库中进行开发。要对此进行测试,请尝试克隆并将更改作为指定用户之一推送到存储库。如果您成功,您还可以在Redmine项目的存储库视图中看到更改,如下所示:
如何在Redmine中使用Mercurial?
Redmine仅适用于克隆在本地计算机中的Mercurial存储库,如官方指南中所述。
-
安装Mercurial包:
-
重启服务:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
sudo installdir/ctlscript.sh restart
-
创建存储库目录,克隆它并为其提供适当的权限:
注意:如果以root身份安装堆栈,则仅使用sudo。在运行以下命令之前,请记住加载Bitnami堆栈环境(说明)。
cd $HOME mkdir mercurialRepo cd mercurialRepo sudo hg clone REPO_URL
-
通过在项目中导航到“设置 - >存储库 - >新存储库”菜单,将存储库添加到Redmine。将ID占位符替换为存储库的短标识符,带有用户名的USER占位符,以及具有克隆存储库的正确目录名称的REPO占位符。
SCM: Mercurial Identifier: ID Path to repository: /home/USER/mercurialRepo/REPO
-
检查存储库并确认您可以查看文件,提交,注释等。