ubuntu server 16.04下搭建redmine系统中ruby相关问题解决

来源:互联网 发布:mac mpv可以加字幕吗 编辑:程序博客网 时间:2024/05/19 16:48

承接上篇的ubuntu server 16.04安装(http://blog.csdn.net/sss_phlight/article/details/77074162)。

实验室老板最近要求安装一套本地的项目管理系统,让我尝试安装Redmine项目管理系统公开版。

redmine主要基于ruby语言,因为之前基本没有接触过,所以在环境、软件包、依赖库安装上经历了一些坎坷。

关于ruby的介绍我参考的http://www.runoob.com/ruby/ruby-intro.html,介绍简单明了。

redmine(我下载的redmine 3.4.2)的安装我按照压缩安装包内doc/INSTALL来进行安装。

INSTALL内给出了环境要求:

* Ruby >= 1.9.3
* RubyGems
* Bundler >= 1.5.0


* A database:
  * MySQL (tested with MySQL 5.1)
  * PostgreSQL (tested with PostgreSQL 9.1)
  * SQLite3 (tested with SQLite 3.7)
  * SQLServer (tested with SQLServer 2012)


Optional:
* SCM binaries (e.g. svn, git...), for repository browsing (must be
  available in PATH)
* ImageMagick (to enable Gantt export to png images)

这里出现了RubyGems,没明白这是什么,参考百度百科https://baike.baidu.com/item/RubyGems/4819659?fr=aladdin。

RubyGems(简称 gems)是一个用于对 Ruby组件进行打包的 Ruby 打包系统。 它提供一个分发 Ruby 程序和库的标准格式,还提供一个管理程序包安装的工具。

RubyGems的功能类似于Linux下的apt-get。也可以理解为gem就是ruby的软件包, 一个gem就是一个ruby软件。

使用gem就可以可以方便的从远程服务器下载并安装Rails。

这里又出现了Rails,不懂的实在太多,参考百科https://baike.baidu.com/item/Rails/10962333。

Ruby On Rails是一个用于编写网络应用程序的软件包。

简单理解一下,就是可以用这个框架写网络软件,redmine应该大多就是用Rails开发的。

最后Bundler是啥呢,参考这位博主(http://blog.csdn.net/zdq0394123/article/details/8075493)的理解为bundle是用来管理维护项目的软件包的,gem则是用来管理具体的每一个软件包的。


那么就先将这些软件装好。

首先,装Ruby,直接sudo apt install ruby安装即可(这里注意,新版ubuntu里apt命令包括了apt-get的功能,可能访问不了国外的软件源,参考http://www.cnblogs.com/bovenson/p/5752213.html更换)。

接下来安装RubyGems,sudo apt install rubygems提示已经安装,看样子是安装ruby就附带了。

再安装Bundler,sudo apt install bundler即可。

数据库在上篇的ubuntu安装中最后自带安装了AMP(Apache+MySQL+PHP),其中就包含了MySQL。

可选安装的软件我暂时选择不安装。

至此各软件版本如下,

ruby 2.3.1p112 

RubyGems 2.5.1

Bundler version 1.11.2

MySQL Server version: 5.7.19-0

满足要求。

接下来按照INSTALL流程继续,(数据库相关操作请参考我另一篇博客

解压安装包后,进入安装包文件夹redmine-3.4.2/内,进入config/文件夹配置database.yml,执行命令

cp database.yml.example database.yml

vi database.yml

修改production部分内容为:

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmineuser
  password: redminepw
  encoding: utf8

其中username,password可自配。

接下来,cd .. 返回安装主目录,安装Gemfile中要求的gems软件包,由于我选择不安装ImageMagick,执行bundle install --without development test rmagick命令。

在这些过程中,主要会遇到的相关问题会有

Installing mysql2 (0.3.11) with native extensions 
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension

解决方法sudo apt install mysql-client libmysqlclient-dev 。

此外,由于安装过程中需要下载的gem软件包较大较多,耗时可能较长。

按照流程,继续执行bundle exec rake generate_secret_token。

至此,安装告一段落,后续流程请参考我后一篇关于redmine安装过程中数据库相关问题的博客(http://blog.csdn.net/sss_phlight/article/details/77198064)。

如有不足之处,请积极指出,谢谢。

原创粉丝点击