如何在ubuntu 安装 redmine

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在ubuntu 安装 redmine相关的知识,希望对你有一定的参考价值。

参考技术A 硬件环境 ubuntu10.10

最好用root用户执行,如果使用其他用户,需要注意用户对文件夹的访问权限

1.安装mysql-server
sudo apt-get install mysql-server
按提示安装即可(中间会提示设置root口令)。
测试是否安装正确
# 登录
mysql -uroot –proot

2为redmine创建数据库用户
grant all privileges on redmine.* to redmine@'%' identified by 'redmine' with grant option;

3.安装ruby
sudo apt-get install ruby-full,
安装后执行ruby -v,显示“ruby 1.8.7 (2010-06-23 patchlevel 299) [i686-linux]“
查了一下(用的命令是locate ruby),安装到了/usr/lib/ruby/1.8目录,但哪些位置还有ruby的文件未知。
注意:不需要再手动把ruby路径加到PATH,因为已经加好了,见/usr/bin
4.sudo apt-get install rubygems
执行gem -v,显示“1.3.7”
注意:据说ruby1.9自带gem。
5.sudo apt-get install rails
发现会自动安装rake-0.8.7,原来rake是rails自带的东西。
会自动安装到/var/lib/gems/1.8/gems目录下。
但在命令行下,rails -v仍然报错:"程序 rails 尚未安装"。
改正:在用户的 .bashrc文件中追加export PATH=/var/lib/gems/1.8/bin:$PATH
感谢这篇文章,也可看一下这篇
后注:应该加到全局环境变量里,因为有的命令,如rake,需要root用户执行
6, sudo apt-get install redmine-mysql
这个是redmine的mysql 插件包

7, sudo apt-get install redmine
中间按照提示输入MySQL的root的用户密码,输入正确后即可创建Mysql默认库,此处一定要保证在MySql中创建过redmine用户。

7, 运行并测试redmine
Redmine默认安装目录为 /usr/share/redmine,首先检测
有没有/usr/share/redmine/log/production.log文件,没有则按照目录建立
切换到目录/usr/share/redmine
运行命令:ruby script/server webrick -e production
即可启动redmine,默认打开3000端口,可以通过http://localhost:3000/访问(管理员初始用户名和密码都是admin)。
如果希望Redmine作为服务运行,加上-d参数即可:ruby script/server webrick -e production –d
修改redmine的端口号:
在redmine/vendor/rails/railties/lib/commands/servers.rb文件中:
options =
:Port => 3000,
:Host => "0.0.0.0",
:environment => (ENV['RAILS_ENV'] || "development").dup,
:config => RAILS_ROOT + "/config.ru",
:detach => false,
:debugger => false,
:path => nil

port就是端口。将其值改为4000即可。

解决使用访问慢的问题

安装好后,本机运行很顺畅,但是用IP访问,一个页面30秒读不出来。
后来发现是默认的服务器webrick的问题,需要解析目标地址的主机名,换个服务器用mongrel
解决
在终端执行指令gem install mongrel
启动:ruby script/server mongrel -e production –d

如何在ubuntu server 14.04下安装gitlab中文版

gitlab是基于Ruby on Rails的,安装和配置非常麻烦,不过有傻瓜安装包,https://about.gitlab.com/downloads/,或者,https://bitnami.com/stack/gitlab/installer。但是这两个包都是英文界面的,gitlab把界面提示写在每一个rb文件里了,所以,要用中文版的不能像redmine那样设定一下就行了。

幸好,还是有无私的大侠把gitlab给汉化了:https://larryli.cn/gitlab,代码地址:https://gitlab.com/larryli/gitlab。

所以本文要做的事情是,不安装傻瓜包,从源码安装gitlab。

gitlab官方有一个说明文档:http://doc.gitlab.com/ce/install/installation.html,本文基本按照这个文档来的。所不同的是,本文用的是apache,不是nginx。

安装步骤有:

1. 依赖包

2. ruby

3. 用户创建

4. 数据库初始化

5. redis

6. gitlab源码

7. apache

本文可能会用到VPN连接,在命令行下创建VPN连接的方法如下:

sudo apt-get install pptp-linux
sudo pptpsetup --create VPN名称 --server 服务器地址 --username 用户名
--password 密码 [--encrypt] --start

以上命令会创建一个设备,如果没有其他的拨号设备,这个设备会是ppp0,用ifconfig可以看到,“--encrypt”选项可选,因为有的服务器不支持,会提示MPPE required but
peer negotiation
failed,创建时带上“--start”选项可以看到连接的情况。
pptpsetup创建的VPN连接重启后会失效,如果想在不重启的情况下删除VPN连接:

sudo pptpsetup --delete VPN名称

创建VPN连接后还需要使能,并且添加到路由列表:

sudo pon VPN名称
sudo route add
default dev ppp0

禁用VPN连接的方法是:

sudo
poff VPN名称

下面开始正文:

1. 依赖包

我装的是ubuntu server
14.04,安装的时候可以选是否安装LAMP(Linux+Apache+MySQL+PHP),如果没装,可以用下面的命令装:

sudo tasksel install
lamp-server

安装的时候会提示输入MySQL的root密码,下面要用。

接下来是依赖关系:

sudo apt-get install flex bison ruby
build-essential zlib1g-dev libyaml-dev libssl-dev libgdbm-dev
libreadline-dev libncurses5-dev libffi-dev curl openssh-server
redis-server checkinstall libxml2-dev libxslt-dev
libcurl4-openssl-dev libicu-dev logrotate python-docutils
pkg-config cmake libkrb5-dev nodejs git-core

注意:这里面装了ruby,应该是1.9.1版本的,gitlab需要2.0以上的ruby,但是安装2.0以上的ruby需要低版本的ruby,所以我们先装上,一会儿卸掉。另外,ubuntu
14.04的软件库里有ruby 2.0,但是实测不能用,所以还是从源码装ruby吧。

2. ruby

下载,编译,安装(安装前删掉ruby 1.9.1):

curl -L --progress
http://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.5.tar.gz | tar
xz
cd ruby-2.1.5
./configure --prefix=/usr --disable-install-rdoc
make

sudo apt-get autoremove ruby
sudo make install

然后安装bundler:

sudo gem install bundler --no-ri
--no-rdoc

3. 用户创建

为gitlab创建一个git用户:

sudo adduser --disabled-login --gecos
\'GitLab\' git

4. 数据库初始化

官方指南用的是PostgreSQL,不过官方也有MySQL的说明:
http://doc.gitlab.com/ce/install/database_mysql.html

sudo apt-get install -y mysql-server
mysql-client libmysqlclient-dev

mysql -u root -p

输入MySQL的root密码登陆,然后:

mysql> CREATE USER
\'git\'@\'localhost\' IDENTIFIED BY \'$password\';

记得把上面这句的"$password"换成实际的密码,然后:

mysql> SET
storage_engine=INNODB;

mysql> CREATE DATABASE IF NOT
EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE
`utf8_unicode_ci`;

mysql> GRANT SELECT, INSERT,
UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, LOCK TABLES ON
`gitlabhq_production`.* TO \'git\'@\'localhost\';

mysql> \\q

5. Redis

Redis貌似是用来存key的数据库吧,不知道,反正按步骤安装:

sudo apt-get install redis-server
sudo cp /etc/redis/redis.conf /etc/redis/redis.conf.orig
sed \'s/^port .*/port 0/\' /etc/redis/redis.conf.orig | sudo tee
/etc/redis/redis.conf
echo \'unixsocket /var/run/redis/redis.sock\' | sudo tee -a
/etc/redis/redis.conf
echo \'unixsocketperm 770\' | sudo tee -a /etc/redis/redis.conf
sudo service redis-server restart
sudo usermod -aG redis git

6. gitlab源码

gitlab源码默认是安装在/home/git/gitlab,如果要更改,请参照官方手册。获取中文版源码的过程如下:

cd /home/git

sudo -u git -H git
clone https://gitlab.com/larryli/gitlab.git

不知道是因为GFW还是什么,git
clone这个版本库可慢可慢了,我用了VPN,速度会快点。

git
clone完以后可以checkout你想要的版本,在本文编写的时间(2015年4月22日),可以:

sudo -u git -H git checkout
7-7-zh

然后配置源码

cd /home/git/gitlab
sudo -u git -H cp config/gitlab.yml.example config/gitlab.yml
sudo chown -R git log/
sudo chown -R git tmp/
sudo chmod -R u+rwX,go-w log/
sudo chmod -R u+rwX tmp/
sudo -u git -H mkdir /home/git/gitlab-satellites
sudo chmod u+rwx,g=rx,o-rwx /home/git/gitlab-satellites
sudo chmod -R u+rwX tmp/pids/
sudo chmod -R u+rwX tmp/sockets/
sudo chmod -R u+rwX public/uploads
sudo -u git -H cp config/unicorn.rb.example config/unicorn.rb
sudo -u git -H cp config/initializers/rack_attack.rb.example
config/initializers/rack_attack.rb
sudo -u git -H git config --global user.name "GitLab"
sudo -u git -H git config --global user.email
"example@example.com"
sudo -u git -H git config --global core.autocrlf input
sudo -u git -H cp config/resque.yml.example
config/resque.yml

当然,你可以把example@example.com改成你的email;上面的那些yml文件里面的配置基本都不用更改;然后,配置数据库用户名和密码:

sudo -u git cp config/database.yml.mysql
config/database.yml
sudo -u git -H editor config/database.yml

sudo -u git -H chmod o-rwx
config/database.yml

然后,安装gems:

sudo -u git -H bundle install --deployment --without
development test postgres aws

这一步必须使用VPN,因为万恶的GFW屏蔽了rubygems.org,所以会提示connection reset by
peer之类的,这部时间也会比较久,如果你的机器是多核的,也可以加上和make相同-jN参数,N等于核数。

(2015年5月2日追加)

发现淘宝做了个rubygrems.org的国内镜像,http://ruby.taobao.org/,可以参照上面的内容设置,加快gems安装速度。

再接下来安装gitlab
shell:

sudo -u git -H bundle exec rake
gitlab:shell:install[v2.6.0]
REDIS_URL=unix:/var/run/redis/redis.sock RAILS_ENV=production
sudo -u git -H editor
/home/git/gitlab-shell/config.yml

把gitlab的url改成http://localhost/或者你的域名。

在接下来初始化数据库:

sudo -u git -H bundle exec rake gitlab:setup
RAILS_ENV=production

加入启动项:

sudo cp lib/support/init.d/gitlab
/etc/init.d/gitlab
sudo update-rc.d gitlab defaults 21

初始化日志:

sudo cp lib/support/logrotate/gitlab
/etc/logrotate.d/gitlab

检查应用状态:

sudo -u git -H bundle exec rake gitlab:env:info
RAILS_ENV=production

编译附件:

sudo -u git -H bundle exec rake assets:precompile
RAILS_ENV=production

启动gitlab服务:

sudo service gitlab start

7. apache

下载apache的配置文件:https://gitlab.com/gitlab-org/gitlab-recipes/blob/master/web-server/apache/gitlab-apache2.4.conf
将其中的“ProxyPassReverse

http://gitlab.example.com/”改成“ProxyPassReverse

http://localhost/”或者你的域名,将其中的“/var/log/httpd/logs/”改为“/var/log/apache2/”。

用命令来说:
wget https://gitlab.com/gitlab-org/gitlab-recipes/raw/master/web-server/apache/gitlab-apache2.4.conf
mv gitlab-apache2.4.conf
001-gitlab.conf
editor 001-gitlab.conf
(进行上述修改)
sudo cp 001-gitlab.conf
/etc/apache2/sites-available
cd /etc/apache2/sites-enabled
sudo rm 000-default.conf
sudo ln -s ../sites-available/001-gitlab.conf
001-gitlab.conf
另外,还需要使能代理模块以实现反向代理功能,不然会提示“ProxyPassReverse”无效之类的。
cd /etc/apache2/mods-enabled
sudo ln -s ../mods-available/proxy.conf
proxy.conf
sudo ln -s
../mods-available/proxy.load proxy.load
sudo ln -s
../mods-available/proxy_connect.load proxy_connect.load
sudo ln -s
../mods-available/proxy_http.load proxy_http.load
sudo ln -s
../mods-available/rewrite.load rewrite.load
重启apache:
sudo service apache2 restart
然后,检查下配置是否正确:

sudo -u git -H bundle exec rake
gitlab:check RAILS_ENV=production

如果都是绿色的结果,那就可以访问了。登陆用户名:root,初始密码:5iveL!fe

最后配置一下邮件,修改/home/git/gitlab/config/gitlab.yml,里面的“email_from:”为一个有效的email地址;修改/home/git/gitlab/config/environments/production.rb,里面的
“config.action_mailer.delivery_method=”为“:smtp”;最后:

cd /home/git/gitlab/config/initializers

sudo -u git -H
cp smtp_settings.rb.sample smtp_settings.rb

然后把文件的里的内容修改正确了,再重启一下gitlab服务就行了:

sudo service gitlab
restart

最后看看我的部署结果:
参考技术A gnome3.8
sudo add-apt-repository ppa:gnome3-team/gnome3
sudo apt-get update
sudo apt-get install gnome-shell ubuntu-gnome-desktop
unity桌面
sudo apt-get install ubuntu-desktop

kde桌面

sudo apt-get install kubuntu-desktop
sudo apt-get install language-pack-kde-zh language-pack-kde-zh-base language-pack-zh language-pack-zh-base language-support-zh

以上是关于如何在ubuntu 安装 redmine的主要内容,如果未能解决你的问题,请参考以下文章

如何在ubuntu 安装 redmine

如何在Ubuntu 20.04 LTS上安装Redmine

在linux不联网的情况下,如何安装redmine?

如何在服务器上搭建和配置redmine bitname

2015年Ubuntu最新Redmine的安装和配置

2015年Ubuntu最新Redmine的安装和配置