HOME
  Security
   Software
    Hardware
  
FPGA
  CPU
   Android
    Raspberry Pi
  
nLite
  Xcode
   etc.
    ALL
  
English Translate 中文翻訳
LINK
BACK
 

2017/10/01

Raspberry Piに Redmine 3.4をインストールする方法(地道な手順が必要) Raspberry Piに Redmine 3.4をインストールする方法(地道な手順が必要)

(ラズパイ3にプロジェクト管理ソフトウェア Redmine 3.4をインストールしてみる)

Tags: [Raspberry Pi], [電子工作]






● Raspberry Pi 3 Model Bを遂に購入

 Raspberry Pi3 Model B RPI2 RPI3

 大人気の CPUボードの Raspberry Piに WiFiと Bluetoothが搭載されたモデルが新発売となりました。
 以前から Raspberry Pi 2を買おうかどうか迷っていましたが、Raspberry Pi 3 Model Bの発売を機に購入を決意してラズベリアンになる事にしました。

 ※ ラズパイの OS Raspbianはバージョンが上がる毎に過去の版と OSの内部の作りが変わり、過去に書かれた製作記事(例えば Raspbian Wheezyの時代の記事)がそのままではエラーが出たりして動かない事が有ります。
 ※ 当方のホームページのラズパイ記事は全て Raspberry Pi 3 Model Bと Raspbian Jessieの組み合わせで動作確認をしております。
(ただし、将来的に新しい Raspbian OSが出た場合に、当方の Raspbian Jessieを基にした内容がそのままでは動かない可能性が有ります。)
 ※ 2017/08/16から Raspbian OSは Raspbian Jessieから Raspbian Stretchに変わりました。

Download Raspbian for Raspberry Pi

ちなみに、歴代のバージョンと名称は
Debianコードネーム年月備考
Debian 9Stretch2017/08/16~
Debian 8Jessie2015~2016/02からラズパイ3対応
Debian 7Wheezy2013~2016
Debian 6.0Squeeze2011~2014
Debian GNU/Linux 5.0Lenny2009~2012


● Raspberry Pi 3にプロジェクト管理ソフトウェア Redmine 3.4をインストールする。

$ uname -a
Linux raspberrypi 4.9.41-v7+ #1023 SMP Tue Aug 8 16:00:15 BST 2017 armv7l GNU/Linux

$ lsb_release -a
No LSB modules are available.
Distributor ID: Raspbian
Description:    Raspbian GNU/Linux 9.1 (stretch)
Release:        9.1
Codename:       stretch


● Redmineとは?

 プロジェクト管理ソフトウェア Redmine

Redmine.JP — Redmine日本語情報サイト
 Redmineはオープンソースのプロジェクト管理ソフトウェアです。タスク管理、進捗管理、情報共有が行えます。ソフトウェア開発やwebサイト制作等のITプロジェクトをはじめ、汎用性が高いため幅広い用途に活用できます。

Redmine 3.4 動作環境



● Redmine 3.4のインストール方法

 Redmine 3.4(2017/10現在の最新版)

 Redmine.JP公式の情報より、
Redmine 3.4をUbuntu Server 16.04.2 LTSにインストールする手順
 これを参考にひたすらインストールの手順を実行していく。
 途中でラズパイ独自の箇所が有るが 95%位は同じで進められる。

# ==== OSの設定
# ja_JP.UTF-8ロケールの作成
sudo locale-gen ja_JP.UTF-8


# ==== 必要なパッケージのインストール
# パッケージ管理システムのデータベースを最新に更新
sudo apt-get update

# RubyとPassengerのビルドに必要な開発ツールやヘッダファイルのインストール
sudo apt-get install -y build-essential zlib1g-dev libssl-dev libreadline-dev libyaml-dev libcurl4-openssl-dev

# PostgreSQLとヘッダファイルのインストール
sudo apt-get install -y postgresql postgresql-server-dev-9.5

# Apacheとヘッダファイルのインストール
sudo apt-get install -y apache2 apache2-dev libapr1-dev libaprutil1-dev

# ImageMagickとヘッダファイル・日本語フォントのインストール
sudo apt-get install -y imagemagick libmagick++-dev

# fonts-takao-pgothic
sudo apt-get -y install fonts-takao

# フォントの確認
fc-list | grep takao

# /usr/share/fonts/truetype/takao-mincho/TakaoPMincho.ttf: TakaoPMincho,Takao P明朝:style=Regular
# /usr/share/fonts/truetype/takao-gothic/TakaoPGothic.ttf: TakaoPGothic,Takao Pゴシック:style=Regular
# /usr/share/fonts/truetype/takao-gothic/TakaoGothic.ttf: TakaoGothic,Takaoゴシック:style=Regular
# /usr/share/fonts/truetype/takao-mincho/TakaoMincho.ttf: TakaoMincho,Takao明朝:style=Regular

# そのほかのツールのインストール
sudo apt-get install -y subversion git
# ==== Rubyのインストール
ruby -v
# ruby 2.3.3p222 (2016-11-21) [arm-linux-gnueabihf]

# Rubyのビルド
# 元々 ruby 2.3.3が入っているので省略

# bundlerのインストール
# Ruby用のパッケージ管理ツールであるbundlerをインストールします。
# インストールには Redmineが使用する gemパッケージを使います。
# --no-rdoc --no-riはドキュメントをインストールしないオプション
# sudo gem install bundler --no-rdoc --no-ri
# $ gem --version
# 2.5.2
# --no-rdoc --no-riは deprecatedとなり古い optionなので --no-documentに変更する
sudo gem install bundler --no-document

# Successfully installed bundler-1.15.4
# ==== PostgreSQLの設定
# PostgreSQLのバージョンの確認
psql --version

# psql (PostgreSQL) 9.6.4

# Redmine用ユーザーの作成(パスワードの設定)
# このパスワードは後述のdatabase.ymlの設定で使用します。
sudo -u postgres createuser -P redmine

# Enter password for new role: PostgreSQL-Password
# Enter it again: PostgreSQL-Password

# Redmine用データベースの作成
sudo -u postgres createdb -E UTF-8 -l ja_JP.UTF-8 -O redmine -T template0 redmine

# sudo -u postgres createdb --encoding=UTF-8 --locale=ja_JP.UTF-8 -O redmine -T template0 redmine
# createdb: database creation failed: ERROR:  invalid locale name: "ja_JP.UTF-8"
# エラーになる場合は妥協して en_GB.UTF-8で作成する。
# sudo -u postgres createdb -E UTF-8 -l en_GB.UTF-8 -O redmine -T template0 redmine

# なぜか ja_JP.UTF-8はエラーになるので en_GB.UTF-8で作成する。
sudo -u postgres createdb -E UTF-8 -l en_GB.UTF-8 -O redmine -T template0 redmine

# DBの設定値を確認する。
sudo -u postgres psql -U postgres

# PostgreSQLのコンソールで
# \lで DBの設定値を確認
# postgres=# \l
#                                   List of databases
#    Name    |  Owner   | Encoding |   Collate   |    Ctype    |   Access privileges
# -----------+----------+----------+-------------+-------------+-----------------------
#  postgres  | postgres | UTF8     | en_GB.UTF-8 | en_GB.UTF-8 |
#  template0 | postgres | UTF8     | en_GB.UTF-8 | en_GB.UTF-8 | =c/postgres          +
#            |          |          |             |             | postgres=CTc/postgres
# qキーを押して抜ける

# PostgreSQLのコンソールを
# \qで終了
# postgres-# \q
# ==== Redmineのインストール
# Redmineのダウンロード
sudo mkdir /var/lib/redmine
sudo chown www-data /var/lib/redmine
sudo -u www-data svn co http://svn.redmine.org/redmine/branches/3.4-stable /var/lib/redmine

# データベースへの接続設定
sudo nano /var/lib/redmine/config/database.yml

# 以下の内容をテキストで入力する。
production:
  adapter: postgresql
  database: redmine
  host: localhost
  username: redmine
  password: "PostgreSQL-Password"
  encoding: utf8

# 設定ファイル config/configuration.yml の作成

ls -l /usr/share/fonts/truetype/takao-gothic/
# -rw-r--r-- 1 root root 6234500 Jul  9  2015 TakaoGothic.ttf
# -rw-r--r-- 1 root root 6234848 Jul  9  2015 TakaoPGothic.ttf

sudo nano /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/truetype/takao-gothic/TakaoPGothic.ttf

# Redmineのインストールディレクトリへ移動
cd /var/lib/redmine

# gemパッケージのインストール(下記の理由で失敗します)
# 下記の ruby.hファイルのインストールにジャンプしてください

# ↓↓ ここから
sudo -u www-data bundle install --without development test --path vendor/bundle

# Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
# current directory:
# /var/lib/redmine/vendor/bundle/ruby/2.3.0/gems/pg-0.18.4/ext
# /usr/bin/ruby2.3 -r ./siteconf20171010-1092-tpfgj6.rb extconf.rb
# mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h
# extconf failed, exit code 1
# Gem files will remain installed in
# /var/lib/redmine/vendor/bundle/ruby/2.3.0/gems/pg-0.18.4 for inspection.
# Results logged to
# /var/lib/redmine/vendor/bundle/ruby/2.3.0/extensions/arm-linux/2.3.0/pg-0.18.4/gem_make.out
# An error occurred while installing pg (0.18.4), and Bundler cannot continue.
# Make sure that `gem install pg -v '0.18.4'` succeeds before bundling.
# In Gemfile: pg

# /usr/lib/ruby/include/ruby.h ファイルが無いとエラーになります。
# gem install pg -v '0.18.4'を実行しろとも言われるので実行します。
sudo gem install pg -v '0.18.4'
# ↑↑ ここまでの手順は不要

# ここから実行する。
# /usr/lib/ruby/include/ruby.hファイルのインストール
sudo apt-get -y install ruby-dev

# gemパッケージのインストール(これで成功します)
# 20分くらい時間が掛かります。
sudo -u www-data bundle install --without development test --path vendor/bundle

# Bundle complete! 30 Gemfile dependencies, 55 gems now installed.
# Gems in the groups development and test were not installed.
# Bundled gems are installed into ./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
# ==== Passengerのインストール
# Phusion Passengerをインストールします。
sudo gem install passenger --no-rdoc --no-ri

# Successfully installed passenger-5.1.8
# 2 gems installed


# PassengerのApache用モジュールのインストール
# 20分くらい時間が掛かります。
sudo passenger-install-apache2-module --auto --languages ruby

# Welcome to the Phusion Passenger Apache 2 module installer, v5.1.8.


# Apache用設定内容の確認
passenger-install-apache2-module --snippet

# ここで出力された内容を下記の Apacheの設定の「Passengerの基本設定」の箇所にコピペします。
# ==== Apacheの設定
ls -l /etc/apache2/conf-available/

# 以下の内容で /etc/apache2/conf-available/redmine.conf を作成してください。
sudo nano /etc/apache2/conf-available/redmine.conf

# Redmineの画像ファイル・CSSファイル等へのアクセスを許可する設定。
# Apache 2.4のデフォルトではサーバ上の全ファイルへのアクセスが禁止されている。
<Directory "/var/lib/redmine/public">
  Require all granted
</Directory>

# Passengerの基本設定。
# passenger-install-apache2-module --snippet で表示された設定を記述。
# 環境によって設定値が異なるため以下の5行はそのまま転記せず、必ず
# passenger-install-apache2-module --snippet で表示されたものを使用すること。
#
LoadModule passenger_module /var/lib/gems/2.3.0/gems/passenger-5.1.8/buildout/apache2/mod_passenger.so
<IfModule mod_passenger.c>
  PassengerRoot /var/lib/gems/2.3.0/gems/passenger-5.1.8
  PassengerDefaultRuby /usr/bin/ruby2.3
</IfModule>

# 必要に応じてPassengerのチューニングのための設定を追加(任意)。
# 詳しくはPhusion Passenger users guide(https://www.phusionpassenger.com/library/config/apache/reference/)参照。
PassengerMaxPoolSize 20
PassengerMaxInstancesPerApp 4
PassengerPoolIdleTime 864000
PassengerStatThrottleRate 10

# Apacheの設定の反映
sudo a2enconf redmine

apache2ctl configtest

# AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
# Syntax OK

sudo service apache2 reload
# ==== Apache上のPassengerでRedmineを実行するための設定
# パターン2: サブディレクトリでRedmineを実行
sudo nano /etc/apache2/conf-available/redmine.conf

# /etc/httpd/conf.d/redmine.conf に次のような設定を追加してください。
Alias /redmine /var/lib/redmine/public
<Location /redmine>
  PassengerBaseURI /redmine
  PassengerAppRoot /var/lib/redmine
</Location>

# 設定後、下記コマンドを実行してApacheを再起動してください。
apache2ctl configtest
sudo service apache2 reload


http://{ラズパイの IPアドレス}/
 をブラウザでアクセスする。
・Raspberry Pi 3にプロジェクト管理ソフトウェア Redmine 3.4をインストールする
Raspberry Pi 3にプロジェクト管理ソフトウェア Redmine 3.4をインストールする



http://{ラズパイの IPアドレス}/redmine
 をブラウザでアクセスする。
 Redmineが動いた!(わーい!終わり)
・Raspberry Pi 3にプロジェクト管理ソフトウェア Redmine 3.4をインストールする
Raspberry Pi 3にプロジェクト管理ソフトウェア Redmine 3.4をインストールする



Redmineを使い始めるための初期設定 (Redmine.JP)
# ==== インストール完了後の初期設定
# インストールが完了しwebブラウザ経由でRedmineにアクセスできる状態になったら、日本語環境で使うための設定変更やユーザーの追加・プロジェクトの追加などを行います。
# インストール後の初期設定手順については以下をご覧ください。
# Redmineを使い始めるための初期設定 (Redmine.JP)
# http://redmine.jp/tech_note/first-step/admin/

インストール直後のRedmineには管理者しかいないので管理者でログインします。
ユーザー名、パスワードともに"admin"でログインできます。
admin
admin

・Raspberry Pi 3にプロジェクト管理ソフトウェア Redmine 3.4をインストールする
Raspberry Pi 3にプロジェクト管理ソフトウェア Redmine 3.4をインストールする


・Raspberry Pi 3にプロジェクト管理ソフトウェア Redmine 3.4をインストールする
Raspberry Pi 3にプロジェクト管理ソフトウェア Redmine 3.4をインストールする
 プロジェクト名に絵文字「😄 😃 😀 😊 ☺ 😉 😍 😘 😚 😗 😙」を入力して正しく表示しました。(PostgreSQLの DBに文字化けしないで保存されている)

・Raspberry Pi 3にプロジェクト管理ソフトウェア Redmine 3.4をインストールする
Raspberry Pi 3にプロジェクト管理ソフトウェア Redmine 3.4をインストールする
 チケットも発行出来ました。

・Raspberry Pi 3にプロジェクト管理ソフトウェア Redmine 3.4をインストールする
Raspberry Pi 3にプロジェクト管理ソフトウェア Redmine 3.4をインストールする
 Redmineが動いた!(わーい!終わり)


● PostgreSQLで絵文字(携帯電話の絵文字)に対応させる

 PostgreSQLは 文字コードを UTF-8の設定で MySQLの UTF8MB4と同等の設定になります。
 ※ データベースの文字エンコーディングに UTF-8 を使用する場合は PostgreSQL 8.1.7以降または 8.2.2以降を使用する。

 寿司ビール問題

 寿司ビール問題とは?
 絵文字が全て同一文字として扱われる問題(文字比較で全部同じ文字として比較される)
 �文字(?文字、&#65533;、U+FFFD、REPLACEMENT CHARACTER)として扱われる。
 

 MySQLは 5.5以降から UTF8MB4に対応
 Collationで utf8mb4_binを指定すると文字比較で区別する。

MySQLの文字コード事情 2017版


● Takao Fontとは?

# fonts-takao-pgothic
sudo apt-get -y install fonts-takao

 Takao Fontとは初期の IPAフォントの問題点を改善したフォント。
 (IPAフォントの初期の頃の問題点の改善で、2017年の現時点で配布されている IPAフォントには当てはまらない)

IPAフォント
 IPAフォント(アイピーエイ フォント)とは、独立行政法人情報処理推進機構 (IPA) によって配布されているコンピュータ用のフォントセットの1つであり、一般ユーザーの日常的な印刷に使用できる品位の日本語アウトラインフォントである。

Takao Fonts
 TakaoフォントはIPAフォントの派生版であり、コミュニティによって開発されています。本プロジェクトの主目的は、コミュニティによるフォントのバグ修正と改善の可能性を確保することです。
 「Takao」は、IPAフォントの元となったTBフォントのオリジナル・デザイナーである故・林隆男氏のファースト・ネームから頂きました。

 IPAの日本語フォントは fonts-ipafontでインストール出来ます。
# IPAの日本語フォント
sudo apt-get -y install fonts-ipafont



Tags: [Raspberry Pi], [電子工作]

●関連するコンテンツ(この記事を読んだ人は、次の記事も読んでいます)

Raspberry Pi Zero Wを海外通販の Pimoroni等での購入方法、購入出来る通販ショップ一覧まとめ
Raspberry Pi Zero Wを海外通販の Pimoroni等での購入方法、購入出来る通販ショップ一覧まとめ

  ラズパイゼロW ワイヤレスモデルを海外通販でサクッと簡単に個人輸入で入手。技適通過でも国内販売は常に品切れ

Raspberry Pi 3で安定して使える相性の無い最適な microSDカードの種類のまとめ
Raspberry Pi 3で安定して使える相性の無い最適な microSDカードの種類のまとめ

  ラズパイ3で安定して使える microSDカードを購入する Teamと SanDiskは絶対に買わない

Raspberry Pi 3 Model Bに専用カメラモジュールを接続する方法
Raspberry Pi 3 Model Bに専用カメラモジュールを接続する方法

  ラズパイに専用カメラモジュールを接続して Raspbianで写真の静止画撮影や動画を録画する方法

Raspberry Pi 3の Linuxコンソール上で使用する各種コマンドまとめ
Raspberry Pi 3の Linuxコンソール上で使用する各種コマンドまとめ

  ラズパイの Raspbian OSのコマンドラインで使用する便利コマンド、負荷試験や CPUシリアル番号の確認方法等も

Raspberry Pi 3公式フォーラムの FAQの内容の日本語訳
Raspberry Pi 3公式フォーラムの FAQの内容の日本語訳

  ラズパイ公式フォーラムの「The Raspberry Pi 3 Model B Q&A thread」の日本語訳

Raspberry Pi 3で GPIO端子の I2C機能を有効化する方法
Raspberry Pi 3で GPIO端子の I2C機能を有効化する方法

  ラズパイ3の GPIO端子の I2C機能を有効にして各種センサーを繋げる方法まとめ

大人気の CPUボード、Raspberry Pi 3 Model Bで作ってみよう
大人気の CPUボード、Raspberry Pi 3 Model Bで作ってみよう

  Raspberry Piの開発環境の構築やタッチパネル付き液晶ディスプレイや各種センサーの使い方まとめ


Raspberry Pi 3、シングルボードコンピュータ ラズパイ3 Raspberry Pi関連はこちらへまとめました
 下記以外にも多数のラズパイ関係の記事が有ります。
 (I2C制御、GPIO制御、1-Wire制御、シリアル通信、日本語音声合成、日本語音声認識、中国語音声合成、MeCab 形態素解析エンジン、赤外線リモコン制御、秋月 I2C液晶モジュール、KeDei 3.5インチ液晶、HDMI 5インチ液晶、NFCカードリーダ、コマンドライン操作方法等)
Raspberry Pi 3に HDMI接続の 800x480 5インチ TFT液晶を接続して使用する方法
Raspbian Jessie 2017-07最終版で LIRCを使って学習リモコン、赤外線リモコンを送受信する方法
Raspberry Pi 3の WiFiを広告ブロック機能付きの無線LANアクセスポイント化 hostapd + dnsmasq編
Raspberry Pi 3の Bluetoothで ブルテザで通信する方法(Bluetooth編)
Raspberry Pi 3で日本語音声を合成して喋らせる方法(OpenJTalk編)
Raspberry Pi 3に USB Micを接続して日本語の音声認識をする方法(Julius編)
Raspberry Pi 3の GPIOに LEDとスイッチを接続して Lチカする方法
Raspberry Pi 3の GPIOに LEDとスイッチを接続してシャットダウンボタンを実装する方法
Raspberry Pi 3で GPIO端子の I2C機能を有効化する方法
Raspberry Pi 3の GPIOに I2C通信方式の気圧計 BMP280を接続する方法
Raspberry Pi 3に I2C通信方式の NFCリーダライタ PN532を接続して NFC FeliCaカードを読む方法
Raspberry Pi 3でネットワーク ライブカメラを構築する方法 Motion編
Raspberry Pi 3でネットワーク ライブカメラを構築する方法 MJPG-streamer編
Raspberry Pi 3 Model Bで動画処理アプリ FFmpegをコンパイルする方法
Raspberry Pi3の X-Window Systemに Windowsのリモートデスクトップから接続する方法
Raspberry Pi3に WebRTCの STUN/TRUNサーバと PeerJSサーバをインストールする方法


Espressif ESP8266 Arduino互換でスケッチが使える ESP-12Eモジュール基板
Espressif ESP8266 Arduino互換でスケッチが使える ESP-12Eモジュール基板

  Espressif ESP8266 ESP-12-E NodeMCU V1 ESP12 CP2102

BangGood通販はドローン以外にも面白い商品がまだまだ有った(電子工作編)
BangGood通販はドローン以外にも面白い商品がまだまだ有った(電子工作編)

  レーザー彫刻機、カラー液晶の DIYオシロ、Arduinoや Raspberry Pi用の小型カラー液晶



[HOME] | [BACK]
リンクフリー(連絡不要、ただしトップページ以外はweb構成の変更で移動する場合があります)
Copyright (c) 2017 FREE WING, Y.Sakamoto
Powered by 猫屋敷工房 & HTML Generator

http://www.neko.ne.jp/~freewing/raspberry_pi/raspberry_pi_redmine/