やっぱり課題管理システムとして Redmine とか欲しいなって思います。
開発者じゃなくても使えそうで
自分が使ったことがあるというところで
Redmine を使うことにしました。
参考
[Linux]さくらVPSのCentOSにRedmineをインストール - daybreaksnow's diaryRedmine 2.5をCentOS 6.5にインストールする手順 | Redmine.JP Blog
CentOS の設定
SELinux の無効化
さくらのVPSでは SELinux はデフォルトで無効化されています。無効化されていない場合は以下のように無効化します。
sudo vim /etc/sysconfig/selinux
-SELINUX=enforcing +SELINUX=disabled
再起動して設定を反映
sudo reboot
無効化されていることの確認
getenforce # Disabled
必要なパッケージのインストール
Redmine を使用するにあたって必要なパッケージをインストールします。EPELリポジトリの登録
Ruby のビルドに必要な libyaml を yum でインストールできるようにするためにEPEL(Extra Packages for Enterprise Linux)リポジトリを追加します。
http://dl.fedoraproject.org/pub/epel/6/x86_64/repoview/epel-release.html
上記のページで Packages の最新のURLをコピー、以下のコマンドのように実行します。
rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm # パッケージ epel-release-6-8.noarch は既にインストールされています。さくらのVPSではインストール済みでした。
開発ツール(Cコンパイラ等)のインストール
sudp yum groupinstall "Development Tools" # No packages in any requested group available to install or update
Ruby と Passenger のビルドに必要なヘッダファイルなどのインストール
sudo yum -y install openssl-devel readline-devel zlib-devel curl-devel libyaml-devel
MySQL とヘッダファイルのインストール
sudo yum -y install mysql-server mysql-devel
Apache とヘッダファイルのインストール
sudo yum -y install httpd httpd-devel
ImageMagick とヘッダファイル・日本語フォントのインストール
sudo yum -y install ImageMagick ImageMagick-devel ipa-pgothic-fonts
ImageMagickと日本語フォントはガントチャートをPNG形式の画像にエクスポートする機能、添付ファイルのサムネイル画像を作成するのに使われます。これらのインストールを行わなくてもRedmineの実行は可能です。
Ruby のインストール
ソースコードのダウンロード
Ruby のオフィシャルサイトのダウンロードページからRuby2.0 の最新のソースコードをダウンロードしてください。
http://www.ruby-lang.org/ja/downloads/
curl -O http://cache.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p481.tar.gz
Redmine 2.5 は 2014 年 2 月にリリースされた Ruby 2.1 には対応していません。
必ず Ruby 2.0 をインストールしてください。
Ruby のビルド
ダウンロードした Ruby の tarball を展開し、Ruby のビルドとインストールを行ってください。tar zxvf ruby-2.0.0-p481.tar.gz
cd ruby-2.0.0-p481
sudo ./configure --disable-install-doc
sudo make
sudo make install
cd ..
--disable-install-doc を指定すると Ruby のドキュメントのインストールを省略でき、作業時間を短縮できます。
ruby -v ruby 2.0.0p481 (2014-05-08 revision 45883) [x86_64-linux]
Bundler のインストール
Redmine が使用する Gem を一括インストールするための Bundler というツールをインストールします。sudo su -
gem install bundler --no-rdoc --no-ri
exit以下のページの事象が発生して悲しくなります。
参考: とっとこ駆け出しエンジニアぶろぐ: Cent OS 6系でsudo時に環境変数PATHが引き継がれない
MySQL の設定
デフォルトキャラクタセットを utf8 に設定
sudo vim /etc/my.cnf
[mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 character-set-server=utf8 # 任意設定 innodb_file_per_table query-cache-size=16M [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid [mysql] default-character-set=utf8
MySQL の起動および自動起動の設定
sudo service mysqld start
sudo chkconfig mysqld on
/etc/my.cnf への設定が反映されていることの確認
mysql -u root
mysql> show variables like 'character_set%';
+--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ 8 rows in set (0.00 sec)
mysql> exit
MySQL のセキュリティ初期設定
- root ユーザーのパスワード変更
- 匿名ユーザー削除
- リモートからの root ログインの禁止
- test データベースの削除
- 設定の反映
mysql_secure_installation
... Enter current password for root (enter for none): [Enter] ... Set root password? [Y/n] y New password: [MySQL Password] Re-enter new password: [MySQL Password] ... Remove anonymous users? [Y/n]: y ... Disallow root login remotely? [Y/n]: y … Remove test database and access to it? [Y/n]: y ... Reload privilege tables now? [Y/n]: y
Redmine 用データベースとユーザーの作成
mysql -uroot -p
mysql> create database redmine default character set utf8;
mysql> grant all on redmine.* to redmine@localhost identified by '********'; # ******** は redmine ユーザのパスワード。 Redmine の設定で使います。
mysql> flush privileges;
mysql> exit;
Redmine のインストール
Redmine のダウンロード
下記のページから Redmine 2.5 の tarball(.tar.gz) をダウンロードしてください。http://www.redmine.org/projects/redmine/wiki/Download
curl -O http://www.redmine.org/releases/redmine-2.5.1.tar.gz
Redmine の展開と配置
tar xvf redmine-2.5.1.tar.gz
sudo mv redmine-2.5.1 /var/lib/redmine
データベースへの接続設定
sudo vim /var/lib/redmine/config/database.yml
production: adapter: mysql2 database: redmine host: localhost username: redmine password: ******** # MySQL の redmine ユーザのパスワード encoding: utf8
設定ファイル config/configuration.yml の作成
sudo vim /var/lib/redmine/config/configuration.yml
production: email_delivery: delivery_method: :smtp smtp_settings: address: "localhost" port: 25 domain: 'example.com' rmagick_font_path: /usr/share/fonts/ipa-pgothic/ipagp.ttf詳しい設定方法については configuration.ymlの設定項目 — Redmine.JP を参照。
通知メールを Gmail から送信する設定について書きました。↓
Redmine の通知メールを Gmail で送信する設定 | DevAchieve
Gem パッケージのインストール
sudo su -
cd /var/lib/redmine
bundle install --without development test
Redmine の初期設定とデータベースのテーブル作成
bundle exec rake generate_secret_token
RAILS_ENV=production bundle exec rake db:migrate
Passenger のインストール
Apache 上で Redmine などの Rails アプリケーションの実行に必要な Passenger をインストールします。gem install passenger --no-rdoc --no-ri
Passenger の Apache 用モジュールのインストール
passenger-install-apache2-moduleインストール後に Apache の設定ファイルに記述すべき内容が表示されます。
また、以下のコマンドで確認することができます。
passenger-install-apache2-module --snippet
LoadModule passenger_module /usr/local/lib/ruby/gems/2.0.0/gems/passenger-4.0.45/buildout/apache2/mod_passenger.so <IfModule mod_passenger.c> PassengerRoot /usr/local/lib/ruby/gems/2.0.0/gems/passenger-4.0.45 PassengerDefaultRuby /usr/local/bin/ruby </IfModule>上記は環境によって異なるので上のコマンドの実行結果を使用して下さい。
exit
Apache の設定
Passenger の設定を追加
sudo vim /etc/httpd/conf.d/passenger.conf
# Passengerの基本設定 # passenger-install-apache2-module --snippet を実行して表示される設定を使用 LoadModule passenger_module /usr/local/lib/ruby/gems/2.0.0/gems/passenger-4.0.45/buildout/apache2/mod_passenger.so参考: [Redmine Rails] Passenger がシンボリックリンクを解決してくれない | Javable.JpPassengerRoot /usr/local/lib/ruby/gems/2.0.0/gems/passenger-4.0.45 PassengerDefaultRuby /usr/local/bin/ruby # Passengerが追加するHTTPヘッダを削除するための設定(任意) Header always unset "X-Powered-By" Header always unset "X-Rack-Cache" Header always unset "X-Content-Digest" Header always unset "X-Runtime" # Passenger のチューニング # Phusion Passenger users guide # http://www.modrails.com/documentation/Users%20guide%20Apache.html PassengerMaxPoolSize 20 PassengerMaxInstancesPerApp 4 PassengerPoolIdleTime 3600 PassengerHighPerformance on PassengerStatThrottleRate 10 PassengerSpawnMethod smart RailsAppSpawnerIdleTime 86400 PassengerMaxPreloaderIdleTime 0 # シンボリックリンクを有効にする PassengerResolveSymlinksInDocumentRoot on
Apache の再起動
sudo service httpd restart
Apache 上の Passenger で Redmine を実行するための設定
sudo chown -R apache:apache /var/lib/redmine
Redmine を VirtualHost で動かすための設定
sudo vim /etc/httpd/conf/httpd.conf
-#NameVirtualHost *:80 +NameVirtualHost *:80
sudo mkdir -p /var/www/vhosts/redmine.wada811.at/
sudo ln -s /var/lib/redmine/public/ /var/www/vhosts/redmine.wada811.at
sudo vim /etc/httpd/conf.d/redmine.wada811.at.conf
<VirtualHost *:80> ServerName redmine.wada811.at DocumentRoot /var/www/vhosts/redmine.wada811.at <Directory "/var/www/vhosts/redmine.wada811.at"> Options -Indexes FollowSymLinks AllowOverride All Order allow,deny Allow from all </Directory> ErrorLog /var/log/httpd/redmine.wada811.at-error_log CustomLog /var/log/httpd/redmine.wada811.at-access_log combined </VirtualHost>
sudo /etc/init.d/httpd graceful
sudo service httpd restart
ドメインを取っていないので Hosts ファイルに追加
sudo sh -c "echo 'IP.ADD.RE.SS redmine.wada811.at' >> /etc/hosts"
参考
Apache のバーチャルホストで Redmine を動作させる 〜 CentOS6 | EasyRamble
Redmine が動きました!
というわけでここまでです。あとは Redmine のユーザ作成などの初期設定です。
Redmineを使い始めるための初期設定 — Redmine.JP