安装基本的软件环境

# 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. 浏览器插件 - Chrome 对 UserScript 的声明头(metadata)兼容性一览

    1.这里的UserScript指的是,油猴插件或者Tampermonkey插件等支持的格式如下例子: // ==UserScript== // @name // @namespace http://A ...

  2. linux扩展权限

    扩展权限包括s,g,t 对于创建文件或文件夹由umask值来决定共默认权限 普通用户默认是0002 root有户是0022 目录的默认权限是777-umask(普通用户775 root是755) 文件 ...

  3. uvalive 4670 Dominating Patterns

    在文本串中找出现次数最多的子串. 思路:AC自动机模板+修改一下print函数. #include<stdio.h> #include<math.h> #include< ...

  4. -lrt

    在编写pthread有关的程序时,编译时老是报"undefined reference to `pthread_create'"的错误,原因是没有链接pthread相关的库,gcc ...

  5. MapReduce 开发环境搭建(Eclipse\MyEclipse + Maven)

    写在前面的话 可详细参考,一定得去看 HBase 开发环境搭建(Eclipse\MyEclipse + Maven) Zookeeper项目开发环境搭建(Eclipse\MyEclipse + Mav ...

  6. 让UILabel具有链接功能,点击后调用safari打开网址

    UILabel *labelGovUrl = [[UILabel alloc] initWithFrame:CGRectMake(73.0, 330.0, 180.0, 40.0)]; labelGo ...

  7. 转载sql server 关于 default value的一些使用总结

    转载原出处:http://blog.csdn.net/miqi770/article/details/6728733 1.在创建表的时候,给字段添加的默认值约束 CREATE TABLE " ...

  8. 【P3O是什么】P3O认证之项目组合、项目群和项目办公室

    如何区分项目组合办公室与项目群和项目办公室? P3O®(Portfolio,Programmed and Project Offices-项目组合.项目群和项目办公室)是由英国商务部 OGC 于200 ...

  9. 【C++深入浅出】智能指针之auto_ptr学习

    起:  C++98标准加入auto_ptr,即智能指针,C++11加入shared_ptr和weak_ptr两种智能指针,先从auto_ptr的定义学习一下auto_ptr的用法. template& ...

  10. iOS 转让APP

    今天需要将一个客户的app转让到它公司的个人账号上,记录下来流程,给有需要的人方便查看. 上面这个是咨询了苹果的客户之后收到的邮件说明,有需要的大家自己仔细看看. 好了,进入正题: 一:转出方操作 1 ...