zoukankan      html  css  js  c++  java
  • Redmine2.5+CentOS6+Apache2

    redmine是使用ruby开发的一款无任何商业限制且可自行部署的项目管理软件,其简洁的界面比较符合程序猿的定位,使用起来比较方便,由于我之前装3X没 成功,各版本之间的依存和配置都不一样,所以最后参考了redmin.org的一篇官方教程装的2.5,虽说有教程傍身还是比较吃力的,而且这篇文章也是找了好久才找到,特别把心得写下来,方便同样入坑的猿类们。

    本文参考自:http://www.redmine.org/projects/redmine/wiki/Install_Redmine_25x_on_Centos_65_complete

    1.CentOS

    系统安装就不多说了,装好后执行更新

    yum update
    

    滚完后reboot

    2.库们

    yum -y install nano 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
    

    直接复制进xshell里一通滚

    3.Apache和MySQL

    yum -y install httpd mysql mysql-server
    

    也是比较基础的安装,装完配置启动项

    chkconfig httpd on
    chkconfig mysqld on
    service httpd start
    service mysqld start
    

    4.防火墙配置(原文有关selliunx和hosts文件,我跳过去了,无伤大雅)

    nano /etc/sysconfig/iptables
    

    在22后面追加

    -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
    

    有就不用加了,注意不要加在最后

    保存退出执行

    /etc/init.d/iptables restart
    

    5.装PHP

    yum -y 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
    

    装完重启httpd服务

    6.Ruby

    curl -L https://get.rvm.io | bash
    source /etc/profile.d/rvm.sh
    rvm install 1.9.3
    

    我没这么装过,一直是wget直接,应该是一样的吧,严谨期间用的教程上的方法

    7.Rubygems

    yum -y install rubygems
    

    8.Passenger

    gem install passenger
    passenger-install-apache2-module
    

    这块说明一下,如果直接运行,他会装比较高版本的rack,导致要比较高本的ruby,就卡住了

    这块要手动把依存包装一下,通过gem获取对应的版本即可 

    gem install rack -v 1.5.2
    

    再装passenger然后就能用它突突突了

    passenger-install-apache2-module
    

    一路回车图图完没报错的话把它甩给你那几句话复制下来

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

    这里如果你用别的版本ruby、passenger的话的生成的路径都不一样的,所以别复制我的,要复制它给你的

    创建redmine的配置文件

    nano /etc/httpd/conf.d/passenger.conf
    

    把复制的那个粘里面保存退出,然后重启web服务

    service httpd restart
    

    9.创建Redmine数据库

    先进mysql

    mysql -u root -p
    

    然后输你的mysql密码,没有就空

    进去后执行

    create database redmine_db character set utf8;
    create user 'redmine_admin'@'localhost' identified by 'your_new_password';
    grant all privileges on redmine_db.* to 'redmine_admin'@'localhost';
    

    注意那your_new_password是你redmine连接mysql账号的密码,你可以自定义个,完后exit退出

    10.装Redmine

    先进到www目录,然后下载2.5版本包,你要是琢磨下个高点的,那 所有对应的ruby啊,passenger啊,都得装高的,所以一定对应好了

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

    然后解压 改名字 删压缩包

    tar xvfz redmine-2.5.0.tar.gz
    mv redmine-2.5.0 redmine
    rm -rf redmine-2.5.0.tar.gz
    

    进里面先把数据库配置改了

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

    就把你刚才创建数据库时候的数据库名、账号、信息填上,就齐了,保存退出

    11.装Rails

    cd /var/www/redmine
    gem install bundler
    bundle install
    rake generate_secret_token
    

    然后执行sql脚本一样的东西创建数据表,ruby真心不懂

    RAILS_ENV=production rake db:migrate
    RAILS_ENV=production rake redmine:load_default_data
    

    让你选择语言随便选个就行

    12.激活FCGI

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

    这一步比较简单

    13.装apache的fcgi模块

    cd /var/www/
    rpm --import https://fedoraproject.org/static/0608B895.txt
    wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
    rpm -ivh epel-release-6-8.noarch.rpm
    yum -y install mod_fcgid
    rm -rf epel-release-6-8.noarch.rpm
    

    14.创建目录

    mkdir -p /opt/redmine/files
    chown -R apache:apache /opt/redmine
    cd /var/www/redmine/config
    cp configuration.yml.example configuration.yml
    nano configuration.yml
    

    在大概212行有一句,在后面补全刚才的路径

    attachements_sorage_path: /opt/redmine/files
    

    注意冒号后面有个空格

    这一步我也不懂啥意思,就跟着照做了,理解不了

    15.创建conf配置信息,email那一步我跨过了,需要用的看原文档先

    nano /etc/httpd/conf.d/redmine.conf
    

    在打开的文档输入

    <VirtualHost *:80>
            ServerName your_domain
            DocumentRoot /var/www/redmine/public/
            <Directory "/var/www/redmine/public/">
                    Options Indexes ExecCGI FollowSymLinks
                    Order allow,deny
                    Allow from all
                    AllowOverride all
            </Directory>
    </VirtualHost>
    

    那个your_admin是你的域名,有域名写域名,没域名写ip

    16.可以跑了

    先给目录追加apache账号的权限,然后重启web服务

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

    然后打开浏览器访问你的域名,就算大功告成了,对了如果重启服务时报冲突啥的错误,打开/etc/httpd/conf/httpd.conf,把ServerName www.example.com那句改成

    ServerName localhost:80
    

    就ok了。

    17.集成Git

    设置好git目录,不管放在哪里要注意好权限,要让其他组的成员有r和x的权限,也就是755,包括上级目录,但如果要是做ssh的方式连接git的话,由于centos严格的规则,家目录不能开放全部权限,所以如果指向家目录注意不能用777,否则会默认用http的方式连接,弄好后最后在redmine目录下执行以下即可

    ruby script/rails runner "Repository.fetch_changesets" -e production
    

    总结:linux上面安装东西不想windows下面那么傻瓜,需要有比较好的逻辑思维,一个好的运维我觉得比一个好的程序要值钱的多。我研究linux有一段时间了,现在也是离了文档就活不下去那种,反正无论做程序也好、dba也好、运维也好,千万别犯懒,遇到问题要及时解决才是一个好的it人员的基本素质。

  • 相关阅读:
    淘宝IP地址库采集
    Android MediaCodec硬编兼容性测试方案
    《Tensorflow实战》之6.3VGGnet学习
    tensorflow问题集锦
    <tensorflow实战>之5.3实现进阶的卷积网咯
    CNN_minist
    tensorflow之MLP学习
    tensorflow学习之等价代码
    tensorflow学习之softmax regression
    NPE进一步学习
  • 原文地址:https://www.cnblogs.com/liuyi2614/p/5785205.html
Copyright © 2011-2022 走看看