Linux
Mac OS
VMware
OpenWrt
ソフトウェア開発
Linux
Mac OS
VMware
OpenWrt
ソフトウェア開発
文書の過去の版を表示しています。
プロジェクト管理ソフトの Redmine をインストールする。
apt-get を使ってインストールすることもできるが、その場合は最新の Redmine を使うことができない。どうせ使うなら最新版を使いたいので手動でインストールする。
パッケージ名 | バージョン |
---|---|
apache2 | 2.4.7-1ubuntu4.1 |
mysql-server | 5.5.40-0ubuntu0.14.04.1 |
libapache2-mod-php5 | 5.5.9+dfsg-1ubuntu4.5 |
rvm | 1.26.9 |
Apache2、MySQL、PHP は Ubuntu をインストールした際に、ついでにインストール済み。
RVM で選択されているデフォルトの Ruby のバージョンは、“ruby-2.0.0-p598”。
インストール前に /etc/apt/sources.list を変更すれば、パッケージを取得するリポジトリを変更できる。(今回はデフォルトのままでインストールを行ったが、extra リポジトリを使用すれば、サードパーティからリリースされた最新のパッケージも利用できる模様)
まずはソフトウェアのリストをアップデートする。
$ sudo apt-get update
MySQL をインストールしていない場合はここでインストール。
$ sudo apt-get install software-properties-common mysql-server mysql-client mysql-common
データベースを作成する前に、AppArmor に邪魔されないように、MySQL に対する監視モードを変更する。
MySQL サーバに root として接続する。
$ mysql -u root -p
> CREATE DATABASE redminedb character SET utf8; > CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'password'; > GRANT ALL PRIVILEGES ON redminedb.* TO 'redmine'@'localhost'; > FLUSH PRIVILEGES; > exit;
今回は /var/www/redmine/ に Redmine のファイルを置くことにした。現在の最新バージョンの 2.6 をダウンロードする。
$ sudo mkdir /var/www/redmine $ cd /var/www/redmine $ sudo chown $USER:$USER . $ wget "http://www.redmine.org/releases/redmine-2.6.0.tar.gz" $ tar -xzvf ./redmine-2.6.0.tar.gz --strip-components=1 $ rm ./redmine-2.6.0.tar.gz
必要なディレクトリを作成し、パーミッションを修正する。
$ cd /var/www/redmine $ mkdir -p tmp tmp/pdf public/plugin_assets $ sudo chown -R www-data:www-data files log tmp public/plugin_assets $ sudo chmod -R 775 files log tmp public/plugin_assets
設定ファイルをコピーする。
$ cd /var/www/redmine $ cp ./config/configuration.yml.example ./config/configuration.yml $ cp ./config/database.yml.example ./config/database.yml
データベースの設定を変更する。
$ vi ./config/database.yml
以下の production セクションを変更。
production: adapter: mysql2 database: redminedb host: localhost username: redmine password: "password" encoding: utf8
Bundler をインストールする。
$ gem install bundler
インストール時に必要になるパッケージを先にインストールする。
$ sudo apt-get install libmysqlclient-dev imagemagick libmagickwand-dev
Bundler で Redmine の実行環境を構築する。
$ cd /var/www/redmine $ bundle install --without development test
セッションストアのトークンを生成する。
$ bundle exec rake generate_secret_token
Redmine で使うデータをデータベースに格納する。
$ bundle exec rake db:migrate RAILS_ENV=production $ bundle exec rake redmine:load_default_data RAILS_ENV=production
途中言語の選択があるので好きな言語を選択する。
以下のエラーが出たが、www-data ユーザ以外で実行したため。実際の運用では www-data が実行ユーザになるので問題ない。
Rails Error: Unable to access log file. Please ensure that /var/www/redmine/log/production.log exists and is chmod 0666. The log level has been raised to WARN and the output directed to STDERR until the problem is fixed.
Phusion Passenger のインストールに必要になるパッケージを先にインストールする。
$ sudo apt-get install libcurl4-openssl-dev apache2-threaded-dev libapr1-dev libaprutil1-dev
Phusion Passenger をインストールする。
$ gem install passenger $ passenger-install-apache2-module
対話式に質問してくるので答えていく。
* Which languages are you interested in?: Ruby のみを選択
以下のエラーが発生した。
AH00526: Syntax error on line 33 of /etc/apache2/sites-enabled/server-ssl.conf: SSLCertificateKeyFile: file '/etc/ssl/private/server.key' does not exist or is empty
一般ユーザで Phusion Passenger のインストールを実行しているため、root にしか権限がない秘密鍵へアクセスできないためらしい。
一時的に該当の行をコメントアウトして再度インストールする。
$ passenger-install-apache2-module
うまく騙せた。コメントアウトした行を元に戻す。
最後に Apache2 の設定方法が表示されるので、指示に従って設定を行う。
LoadModule passenger_module /home/user/.rvm/gems/ruby-2.0.0-p598/gems/passenger-4.0.57/buildout/apache2/mod_passenger.so <IfModule mod_passenger.c> PassengerRoot /home/user/.rvm/gems/ruby-2.0.0-p598/gems/passenger-4.0.57 PassengerDefaultRuby /home/user/.rvm/gems/ruby-2.0.0-p598/wrappers/ruby </IfModule>
<VirtualHost *:80> ServerName www.yourhost.com # !!! Be sure to point DocumentRoot to 'public'! DocumentRoot /somewhere/public <Directory /somewhere/public> # This relaxes Apache security settings. AllowOverride all # MultiViews must be turned off. Options -MultiViews # Uncomment this if you're on Apache >= 2.4: #Require all granted </Directory> </VirtualHost>