# 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源php
# CentOS6mysql
# rpm -Uvh http://repo.mysql.com//mysql57-community-release-el6-8.noarch.rpm
# CentOS7nginx
# rpm -Uvh http://repo.mysql.com//mysql57-community-release-el7-8.noarch.rpm
安裝mysqlc++
# yum install mysql-community-server
設置自啓,並啓動mysql服務sql
# chkconfig mysqld on
# service mysqld start
查看安裝完成後生成的root臨時密碼數據庫
# grep 'temporary password' /var/log/mysqld.log
運行mysql安全配置apache
# mysql_secure_installation
安裝php、php-fpm和相關擴展包centos
# 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源ruby
# 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
# 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源
# vi /etc/yum.repos.d/nginx.repo
[nginx] name=nginx repo baseurl=http://nginx.org/packages/mainline/OS/OSRELEASE/$basearch/ gpgcheck=0 enabled=1
根據操做系統類型,替換 「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:9000 location ~ \.php$ {
try_files $uri =404; fastcgi_pass 127.0.0.1:9000; 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版本管理器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
# yum install rubygems
# 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>
登錄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
# cd /var/www # wget http://www.redmine.org/releases/redmine-3.2.2.tar.gz
解壓並重命名文件夾
# tar xfz redmine-3.2.2.tar.gz # mv redmine-3.2.2 redmine # rm -rf redmine-3.2.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
# 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
# bundle exec rake generate_secret_token
# RAILS_ENV=production bundle exec rake db:migrate
# RAILS_ENV=production bundle exec rake redmine:load_default_data
# cd /var/www/redmine/public # cp dispatch.fcgi.example dispatch.fcgi # cp htaccess.fcgi.example .htaccess
# yum install epel-release (安裝epel源)
# yum install mod_fcgid
# 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', 2, 1000000) config.logger.level = Logger::INFO
# vi configuration.yml
production:
email_delivery:
delivery_method: :sendmail
# 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.5/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>
# cd /var/www # chown -R apache:apache redmine # chmod -R 755 redmine # service httpd restart