RaspberryPi環境構築 チケット管理システム -Redmineのインストール-

今月定時帰りなし。でも土日はしっかり休み。

ホワイト企業勤めな管理人。

 

チケット管理システムRedmineをインストールしていきます。

個人運用でチケット管理システムはいらない気もしますが、Redmineは自分専用のWikiを作成したり、ToDo管理として使用しています。

ラズパイ周りのインストール・設定方法をはじめとして、いろいろな環境構築のメモや資格取得のための勉強用メモもWikiに残したりしています。何かあったときに見返せば便利です。

無料だしカスタマイズもできるので、ToDo管理に何使えばいいか迷っている人にはお勧めです。

 

Redmineのインストール

rootユーザでの作業のためスイッチ

sudo su

1.ソフトウェアのアップデート

apt-get update
apt-get -y upgrade

2.各種パッケージのインストール

そこそこ時間がかかります。

apt-get -y install apache2 libapache2-mod-passenger
apt-get -y install imagemagick libmagick++-dev
apt-get -y install ruby-dev bundler
apt-get -y install git subversion

3.MySQLのインストール

apt-get -y install mysql-server default-libmysqlclient-dev

MySQLの設定

sudo /usr/bin/mysql_secure_installation

Enter current password for root (enter for none):(Enter)

Set root password? [Y/n]y

New password:(MySQL用の管理者パスワードの設定)
Re-enter new 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

MySQLへログイン

mysql -u root -p

Enter password:(先ほど設定したパスワード)

Redmine用のユーザ作成

以下MySQLコンソールの実行。Redmine用のDBを作成します。

create database redmine default character set utf8;
grant all on redmine.* to redmine@localhost identified by 'redmine';
grant all privileges on redmine.* to redmine@'192.168.1.%' identified by 'redmine';
flush privileges;
exit;

私は以前のDBのダンプを復元するので以下のコマンドを実行して復元します。

mysql -u root -p < mysqldump

4.Redmineのインストール

mkdir -p /var/www/redmine
chown www-data /var/www/redmine
sudo -u www-data svn co http://svn.redmine.org/redmine/branches/3.3-stable /var/www/redmine

・設定ファイルのバックアップ

cp /var/www/redmine/config/database.yml.example /var/www/redmine/config/database.yml
cp /var/www/redmine/config/configuration.yml.example /var/www/redmine/config/configuration.yml

・設定ファイルの編集

vim /var/www/redmine/config/database.yml

以下のように編集

production:
adapter: mysql2
host: localhost
# Redmine用のMySQLデータベース名
database: redmine
# Redmine用のMySQLユーザ名
username: redmine
# Redmine用のMySQLパスワード
password: redmine
encoding: utf8

 ・gemパッケージのインストール

結構時間かかります。私の環境だと10分くらいかかりました。

cd /var/www/redmine
sudo -u www-data bundle install --without development test --path vendor/bundle

Redmineの初期設定

sudo -u www-data bundle exec rake generate_secret_token
sudo -u www-data RAILS_ENV=production bundle exec rake db:migrate
sudo -u www-data RAILS_ENV=production REDMINE_LANG=ja bundle exec rake redmine:load_default_data

5.Apacheの設定

vim /etc/apache2/sites-enabled/vhost-ssl.conf

・ドキュメントルートを修正

DocumentRoot /var/www/html

DocumentRoot /var/www/redmine/public

Apacheの再起動

systemctl restart apache2

・ホストからMySQLから接続できるように設定

sudo vim /etc/mysql/mariadb.conf.d/50-server.cnf

bind-addresをコメントアウト

 

これで無事アクセスできるかと思ったら、早速トラブルです。

f:id:purt:20181106231041p:plain

こういう時はログの確認。以下のようなエラーを見つけたので、MySQLのユーザを確認しました。

Message from application: Access denied for user 'redmine'@'localhost' (Mysql2::Error)

どうやらRedmineの用のアカウントを作成していなかったようです。dumpを取っていたつもりですが、redmineのDBしか取得しておらず、mysqlのユーザテーブルは初期値のまま。

Redmine用のユーザ作成で作成する必要があったユーザを作成します。

grant all on redmine.* to redmine@localhost identified by 'redmine';
grant all privileges on redmine.* to redmine@'192.168.1.%' identified by 'redmine';
flush privileges;
exit;

 これで無事にアクセスできました。プロジェクトはもちろん、チケットや、wikiもそのまま復活。一安心です。

f:id:purt:20181106231119p:plain

 

次回はSambaをインストールしていきます。諸々以前に使っていた環境が整えばバックアップなどの機能も追加していきます。