Redmine is a free and open source, web-based project management and issue tracking tool. Written using the Ruby on Rails framework, it is cross-platform and cross-database.
Features:-
Some of the main features of Redmine are:
- Multiple projects support
- Flexible role based access control
- Flexible issue tracking system
- Gantt chart and calendar
- News, documents & files management
- Feeds & email notifications
- Per project wiki
- Per project forums
- Time tracking
- Custom fields for issues, time-entries, projects and users
- SCM integration (SVN, CVS, Git, Mercurial and Bazaar)
- Issue creation via email
- Multiple LDAP authentication support
- User self-registration support
- Multilanguage support
- Multiple databases support
Requirement:-
- Operating System like Unix, linux, windows, macOS.
- Ruby Interpreter
- Redmine
- Database Servers Like Mysql, Sqlite3, MSSQL, Postgresql.
- ImageMagick
Installation & Configuration:-
Web Server:-
# yum install –y httpd # systemctl start httpd # systemctl enable httpd # rm –f /var/www/error/noindex.html #rm –f /etc/httpd/conf.d/welcome.con # vi /etc/httpd/conf/httpd.conf
Edit some line as
ServerToken Prod keepAlive On ServerAdmin root@your_domain AllowOverride All ServerName your_server:80 DirectoryIndex index.html index.htm ServerSignature Off # systemctl restart httpd
Mail Server:-
# yum install –y postfix # systemctl start postfix # systemctl enable postfix # vi /etc/postfix/main.cnf myhostname = mail_your_host mydomain = your_domain myorigin = $mydomain inet_interfaces = all mydestination = $myhostname, $mydomain mynetworks = your_network/subnet inet_protocol = ipv4 # systemctl restart postfix
Database Server:-
# yum install –y mysql-server
# vi /etc/my.cnf
character-set-server= utf8
# systemctl start mysql-server
# systemctl enable mysql-server
# mysql_secure_installatio
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY! In order to log into MySQL to secure it, we'll need the current password for the root user. If you've just installed MySQL, and you haven't set the root password yet, the password will be blank, so you should just press enter here. # Enter Enter current password for root (enter for none): OK, successfully used password, moving on... Setting the root password ensures that nobody can log into the MySQL root user without the proper authorisation. # set root password Set root password? [Y/n] y New password: # input any password Re-enter new password: Password updated successfully! Reloading privilege tables.. ... Success! By default, a MySQL installation has an anonymous user, allowing anyone to log into MySQL without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment. # remove anonymous users Remove anonymous users? [Y/n] y ... Success! Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network. # disallow root login remotely Disallow root login remotely? [Y/n] y ... Success! By default, MySQL comes with a database named 'test' that anyone can access. This is also intended only for testing, and should be removed before moving into a production environment. # remove test database Remove test database and access to it? [Y/n] y - Dropping test database... ... Success! - Removing privileges on test database... ... Success! Reloading the privilege tables will ensure that all changes made so far will take effect immediately. # reload privilege tables Reload privilege tables now? [Y/n] y ... Success! Cleaning up... All done! If you've completed all of the above steps, your MySQL installation should now be secure. Thanks for using MySQL!
Ruby:-
# yum –y groupinstall “Development Tools” # yum --enablerepo=epel -y install libyaml libyaml-devel readline-devel ncurses-devel gdbm-devel tcl-devel openssl-devel db4-devel libffi-devel # mkdir -prpmbuild/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS} #wget http://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.5.tar.gz -P rpmbuild/SOURCES #wget https://raw.githubusercontent.com/feedforce/ruby-rpm/master/ruby21x.spec -P rpmbuild/SPECS #rpmbuild -bb rpmbuild/SPECS/ruby21x.spec #rpm -Uvh rpmbuild/RPMS/x86_64/ruby-2.1.5-2.el6.x86_64.rpm # ruby –v; gem –v;
Redmine Install:-
#yum -y install ImageMagick ImageMagick-devel libcurl-devel httpd-devel mysql-devel ipa-pgothic-fonts #mysql –u root –p # CREATE DATABASE your_db; #GRANT ALL PRIVILEGES ON your_db.* TO ‘db_user’@’your_host’ IDENTIFIED BY ‘db_passwd’; # FLUSH PRIVILEGES; #EXIT;
# wget http://www.redmine.org/releases/redmine-3.0.1.tar.gz #tar zxvf redmine-3.0.1.tar.gz # mv redmine-3.0.1 /var/www/redmine #cd /var/www/redmine
#vi ./config/database.yml production: adapter: mysql2 database: db_name host: your_host username: db_user password: db_passwd encoding: utf8 #vi ./config/configuration.yml production: email_delivery: delivery_method: :smtp smtp_settings: address: "your_host" port: 25 domain: 'your_domain' rmagick_font_path: /usr/share/fonts/ipa-pgothic/ipagp.ttf
#gem install bundler --no-rdoc --no-ri #bundle install --without development test postgresql sqlite #bundle exec rake generate_secret_token #bundle exec rake db:migrate RAILS_ENV=production #gem install passenger --no-rdoc --no-ri #passenger-install-apache2-module Welcome to the Phusion Passenger Apache 2 module installer, v5.0.6. This installer will guide you through the entire installation process. Itshouldn't take more than 3 minutes in total. Here's what you can expect from the installation process: 1. The Apache 2 module will be installed for you. 2. You'll learn how to configure Apache. 3. You'll learn how to deploy a Ruby on Rails application. Don't worry if anything goes wrong. This installer will advise you on how tosolve any problems. Press Enter to continue, or Ctrl-C to abort.1 (specify 1 and Enter)
#vi /etc/httpd/conf.d/passenger.conf LoadModule passenger_module /usr/lib64/ruby/ gems/ 2.1.0/ gems/ passenger-5.0.6/buildout/apache2/mod_passenger.so PassengerRoot /usr/lib64/ruby/gems/2.1.0/gems/passenger-5.0.6 PassengerDefaultRuby /usr/bin/ruby NameVirtualHost *:80 <VirtualHost *:80> ServerName your_hostname DocumentRoot /your_location/public </VirtualHost> # chown -R apache. /var/www/redmine # systemctl restart httpd