安装基本的软件环境

# yum install zip unzip libyaml-devel zlib-devel curl-devel openssl-devel httpd-devel apr-devel apr-util-devel mysql-devel gcc ruby-devel gcc-c++ make postgresql-devel ImageMagick-devel sqlite-devel perl-LDAP mod_perl perl-Digest-SHA

安装MySQL

添加mysql源

# CentOS6

# rpm -Uvh http://repo.mysql.com//mysql57-community-release-el6-8.noarch.rpm

# CentOS7

# rpm -Uvh http://repo.mysql.com//mysql57-community-release-el7-8.noarch.rpm

安装mysql

# yum install mysql-community-server

设置自启,并启动mysql服务

# chkconfig mysqld on
# service mysqld start

查看安装完成后生成的root临时密码

# grep 'temporary password' /var/log/mysqld.log

运行mysql安全配置

# mysql_secure_installation

安装PHP、php-fpm和phpMyAdmin

安装php、php-fpm和相关扩展包

# yum install php php-mysql php-gd php-imap php-ldap php-mbstring php-odbc php-pear php-xml php-xmlrpc php-pecl-apc php-soap php-fpm

设置自启,并启动php-fpm服务

# chkconfig php-fpm on
# service php-fpm start

添加rpmforge源

# CentOS6

# rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm

# CentOS7

# rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm

安装phpMyAdmin

# yum install phpmyadmin

修改phpMyAdmin虚拟目录配置文件,允许远程访问

# vi /etc/httpd/conf.d/phpmyadmin.conf

(Apache 2.2) 把 "Allow from 127.0.0.1" 修改为 "Allow from all"

Allow from all

(Apache 2.4) 添加 "Require all granted"

Require all granted

修改phpMyAdmin配置文件config.inc.php,将认证方式 'cookie' 改为 'http'

$cfg['Servers'][$i]['auth_type'] = 'http';

方式一:Apache下使用php-fpm运行php

安装Apache

# yum install httpd

修改php apache配置文件

# vi /etc/httpd/conf.d/php.conf

如果php-fpm使用的是TCP socket

<FilesMatch \.php$>
SetHandler "proxy:fcgi://127.0.0.1:9000"
</FilesMatch>

如果用的是unix socket

<Proxy "unix:/var/run/php-fpm/php-fpm.sock|fcgi://php-fpm">
ProxySet disablereuse=off
</Proxy> <FilesMatch \.php$>
SetHandler proxy:fcgi://php-fpm
</FilesMatch>

设置自启,并启动apache服务

# chkconfig httpd on
# service httpd start

方式二:Nginx下使用php-fpm运行php

添加nginx源

# vi /etc/yum.repos.d/nginx.repo

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/mainline/OS/OSRELEASE/$basearch/
gpgcheck=
enabled=

根据操作系统类型,替换 “OS” 为 “rhel” 或 “centos”,“OSRELEASE” 为 “5”, “6”, 或 “7

安装Nginx

# yum install nginx

修改nginx配置文件

# vi /etc/nginx/nginx.conf

如果php-fpm使用的是TCP socket

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass 127.0.0.1:;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

如果用的是unix socket

# pass the PHP scripts to FastCGI server listening on unix:/var/run/php-fpm/php-fpm.sock
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

安装Ruby

安装ruby版本管理器RVM

# \curl -sSL https://get.rvm.io | bash
# source /etc/profile.d/rvm.sh

列出所有ruby版本

# rvm list known

Redmine 3.2不支持Ruby 2.3,所以安装Ruby 2.2

# rvm install 2.2

检查ruby版本

# ruby -v

安装Rubygems(Ruby包管理器)

# yum install rubygems

Apache下安装Passenger

# gem install passenger --no-ri --no-rdoc
# passenger-install-apache2-module

命令执行完后按照提示进行配置passenger的虚拟目录文件

# vi /etc/httpd/conf.d/passenger.conf

LoadModule passenger_module /usr/local/rvm/gems/ruby-2.3.1/gems/passenger-5.0.28/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
PassengerRoot /usr/local/rvm/gems/ruby-2.3.1/gems/passenger-5.0.28
PassengerDefaultRuby /usr/local/rvm/gems/ruby-2.3.1/wrappers/ruby
</IfModule>

为Redmine创建空数据库和用户

登陆mysql

# mysql -u root -p

进行相关数据库配置

mysql> CREATE DATABASE redmine CHARACTER SET utf8;
mysql> CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'my_password';
mysql> GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';

安装Redmine

下载Redmine

# cd /var/www
# wget http://www.redmine.org/releases/redmine-3.2.2.tar.gz

解压并重命名文件夹

# tar xfz redmine-3.2..tar.gz
# mv redmine-3.2. redmine
# rm -rf redmine-3.2..tar.gz

配置redmine数据库连接字符串

# cd /var/www/redmine/config
# cp database.yml.example database.yml

# vi database.yml

production:
adapter: mysql2
database: redmine
host: localhost
username: redmine
password: "my_password"
encoding: utf8

安装依赖包(使用依赖包管理工具Bundler)

# cd /var/www/redmine
# gem install bundler
# bundle install --without development test

为了提高下载gem包速度,可以使用国内的淘宝源,你可以用 Bundler 的 Gem 源代码镜像命令

# bundle config mirror.https://rubygems.org https://ruby.taobao.org

生成安全Token

# bundle exec rake generate_secret_token

创建redmine数据库表

# RAILS_ENV=production bundle exec rake db:migrate
# RAILS_ENV=production bundle exec rake redmine:load_default_data

激活FCGI

# cd /var/www/redmine/public
# cp dispatch.fcgi.example dispatch.fcgi
# cp htaccess.fcgi.example .htaccess

安装mod_fcgi

# yum install epel-release  (安装epel源)
# yum install mod_fcgid

Redmine配置

# cd /var/www/redmine/config
# cp -v configuration.yml.example configuration.yml

(可选)更改附件文件存放路径

# mkdir -p /opt/redmine/files
# chown -R apache:apache /opt/redmine

# vi configuration.yml

attachments_storage_path: /opt/redmine/files

(可选)配置日志

# cp -v additional_environment.rb.example additional_environment.rb

# vi additional_environment.rb

#Logger.new(PATH,NUM_FILES_TO_ROTATE,FILE_SIZE)
config.logger = Logger.new('/path/to/logfile.log', , )
config.logger.level = Logger::INFO

(可选)配置Email(sendmail方式)

# vi configuration.yml

production:
email_delivery:
delivery_method: :sendmail

给Redmine创建虚拟目录

# vi /etc/httpd/conf.d/redmine.conf

Alias /redmine /var/www/redmine/public
<Location /redmine>
PassengerBaseURI /redmine
PassengerAppRoot /var/www/redmine
PassengerRuby /usr/local/rvm/gems/ruby-2.2./wrappers/ruby
</Location>
<Directory /var/www/redmine/public>
Allow from all
Options -MultiViews
# Uncomment this if you're on Apache >= 2.4:
#Require all granted
</Directory>

启动Redmine

# cd /var/www
# chown -R apache:apache redmine
# chmod -R redmine
# service httpd restart

Linux上安装Redmine的更多相关文章

  1. 在linux上安装redmine

    Redmine 是一个开源的.基于Web的项目管理和缺陷跟踪工具.它用日历和甘特图辅助项目及进度可视化显示.同时它又支持多项目管理.Redmine是一个自由开放 源码软件解决方案,它提供集成的项目管理 ...

  2. 如何在Linux(Ubuntu)上安装Redmine

    费话就不多说了,本文主要描述如何在如何在Linux(Ubuntu)上安装Redmine.通过这篇文章你将了解如下内容. TL;DR 在Linux(Ubuntu)上安装Redmine的基本流程 配置ph ...

  3. 在Windows和Linux上安装paramiko模块以及easy_install的安装方法

    一.paramiko模块有什么用? paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接.由于使用的是python这样的能够跨平台运行的语言 ...

  4. 在Linux上安装Oracle RAC 12 c(12.1) 虚拟机,一步一步向导

    Oracle RAC 12 c(12.1)在Linux上安装虚拟机,一步一步向导 今天我们将看到如何安装 12 c版本1 RAC(真正的应用程序集群)数据库2 Linux 64位的虚拟机 使用VMWa ...

  5. WINDOWS和Linux上安装php7 alpha 并安装 yaf

    WINDOWS和Linux上安装php7 alpha 并安装 yaf PHP技术  widuu  2个月前 (06-15)  126浏览  0评论 windows 1.windows上安装 php7 ...

  6. 在Windows和Linux上安装paramiko模块

    一.paramiko模块有什么用? paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接.由于使用的是python这样的能够跨平台运行的语言 ...

  7. Linux上安装使用boost入门指导

    Data Mining Linux上安装使用boost入门指导 获得boost boost分布 只需要头文件的库 使用boost建立一个简单的程序 准备使用boost二进制文件库 把你的程序链接到bo ...

  8. 如何在Linux上安装Storm

    Storm是开源的分布式实时计算系统,能够让数据流处理变得简单.可靠,也因此在大数据领域有广泛的实际 应用.下面介绍一下如何在Linux系统上安装Storm.根据Storm官网介绍,安装Storm软件 ...

  9. linux上安装Drupal

    linux上安装Drupal 前言:国内用drupal的并不太多,网上资料也很少.要注意的是drupal尽量别使用apt来安装,特别是ubuntu平台的drupal做出了一定的更改,会妨碍后期的学习和 ...

随机推荐

  1. java.lang.NoClassDefFoundError: javax/transaction/Synchronization (jUnit测试报错)

      测试hibernate   报错原因项目缺少包   在 hibernate 解压目录下找到 jta.jar 文件     往项目中添加该 jar 包,即可解决   添加方法:[右击项目]--> ...

  2. Web---JSTL(Java标准标签库)-Core核心标签库、I18N国际化、函数库

    前面为JSTL中的常用EL函数,后面的为具体演示实例! JSTL简介: JSTL(Java Standard Tag Library) –Java标准标签库. SUN公司制定的一套标准标签库的规范. ...

  3. 问题:关于一个贴友的js留言板的实现

    需求:用js做一个简单的留言板效果 html部分: 1: <!DOCTYPE> 2: <html lang="zh-en"> 3: <head> ...

  4. flappy pig小游戏源码分析(3)——解剖util

    这一节我们继续高歌猛进,如果对源码中有无论无何都理解不通的问题,欢迎和我交流,让我也学习一下,我的qq是372402487. 还是按照惯例看看我们的目录结构. 我们在前两节中已经分析了game.js, ...

  5. matlab 函数说明--fspecial

    好吧,这个函数在图像处理中运用得非常广泛,虽然我还是觉得不知道为啥要取这个名字,fspecial的作用如下:         产生一个预定义的2D 滤波器(create a predefined 2D ...

  6. 【Zookeeper学习】Apache Zookeeper项目简介

    正在撰写,稍后来访……

  7. Intra Refresh of H264 encoder

    https://en.wikipedia.org/wiki/X264 x264 is able to use Periodic Intra Refresh instead of keyframes, ...

  8. [Objective-c 基础 - 1.2] OC的基本类

    #import <Foundation/Foundation.h> typedef enum {GenderMan, GenderFemale} Gender; typedef enum ...

  9. IAR 编译错解决Error[e16]: Segment NEAR_Z (size: 0x16d align: 0) is too long for segment definition. At least 0x83 more bytes needed.

    Error[e16]: Segment NEAR_Z (size: 0x16d align: 0) is too long for segment definition. At least 0x83 ...

  10. hdu 4612 (双联通+树形DP)

    加一条边后最少还有多少个桥,先Tarjan双联通缩点, 然后建树,求出树的直径,在直径起点终点加一条边去的桥最多, #pragma comment(linker, "/STACK:10240 ...