Project

General

Profile

Actions

C7InstallRedmine

自宅PCにRedmineをインストールしてみた記録です。

これを書いたときの各種ソフトのバージョン

OS CentOS Linux release 7.5.1810
Kernel 3.10.0-957.1.3.el7.x86_64
Apache 2.4.6
PostgreSQL 9.2.24
Ruby 2.3.5p335
Redmine 3.4-stable
  • rubyのコンパイルの前に yum install gdbm-devel しておくと、コンパイル時のエラーがなくなります。

OSをインストールし終えてからの設定

基本的に、 http://blog.redmine.jp/articles/3_4/install/centos/ に従います。

CentOSの設定

書いてあるまま

必要なパッケージのインストール

書いてあるまま

Rubyのインストール

2.3.5がリリース済みなので、ダウンロードするのは
wget https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.5.tar.xz
に直します。

./configure --disable-install-doc
が終わった後にMakefileをいじって、optflagsの行に-march=nativeを追加しておくと実行が速くなるかも。

bundlerのインストールのときにgemが無いと言われたら、/usr/local/binにパスが通っていないからです。
/usr/local/bin/gem install bundler --no-rdoc --no-ri
とすれば動作します。

PostgreSQLの設定

データベース名とユーザ名が両方redmineだと、どちらを指しているのかわかりづらくなるので、
データベース名(2列目)を「redminedb」、ユーザ名(3列目)を「redmineuser」にします。
pg_hba.confは

# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
host    redminedb       redmineuser     127.0.0.1/32            md5
host    all             all             127.0.0.1/32            ident
# IPv6 local connections:
host    redminedb       redmineuser     ::1/128                 md5
host    all             all             ::1/128                 ident

のように書き換えます。

合わせて、Redmine用ユーザーの作成は
sudo -u postgres createuser -P redmine → sudo -u postgres createuser -P redmineuser

Redmine用データベースの作成は
sudo -u postgres createdb -E UTF-8 -l ja_JP.UTF-8 -O redmine -T template0 redmine →
sudo -u postgres createdb -E UTF-8 -l ja_JP.UTF-8 -O redmineuser -T template0 redminedb
に変えます。

Redmineのインストール

データベースへの接続設定の、database.ymlでは以下のように databaseをredminedb usernameをredmineuser に変えます。

production:
  adapter: postgresql
  database: redminedb
  host: localhost
  username: redmineuser
  password: "********"
  encoding: utf8

Redmineの初期設定と初期データ登録

書いてあるそのまま

RAILS_ENV=production bundle exec rake db:migrate がエラーになり
「PG::ConnectionBad: FATAL: ユーザ"redmine"のIdent認証に失敗しました」と言われるときは、/var/lib/pgsql/data/pg_hba.confを見直してください。
「host redminedb redmineuser ...」は、「host all all ...」よりも上(ファイルの先頭に近い側)にないとダメなようです。

pg_hba.confを書き直したら、bundle exec ~を再度試す前に sudo systemctl reload postgresql で読み直させてください。

Passengerのインストール

passenger-install-apache2-module も/usr/local/bin/にあるので、起動できない場合は/usr/local/bin/を頭につけてください。

Apacheの設定

書いてあるそのまま


そのほか、必要なこと

https用の穴をfirewallにあけます。

firewall-cmd --zone=public --add-service=http --permanent
firewall-cmd --reload
firewall-cmd --zone=public --list-services

この時点でApache2.4が動いているので、ブラウザから http://<割り当てられたIPアドレス> に接続すればApacheのテストページが見られるはずです。
また、Redmineが動いているので、ブラウザから http://<割り当てられたIPアドレス>/redmine に接続すればRedmineのホームが見られるはずです。

注意点

  • systemctl start httpd したときにServerNameを設定しろと怒られた場合は、 /etc/httpd/conf/httpd.conf を編集して、ServerName hogehoge.dip.jp を追加します。

Apacheチューニング

https://centossrv.com/apache.shtml を読んで、適当にチューニングします。

インストール完了後の初期設定

http://blog.redmine.jp/articles/3_4/install/centos/ の インストール完了後の初期設定 をなぞります。
ただし、別のサーバで運用していたRedmineのバックアップを今構築したサーバにリストアするならこのタイミングです。

Redmineのバックアップをリストアする

https通信を行えるようにする

平文でパスワードのやり取りをするのは危ないので、httpsで通信できるようにします。

ieserver.netに登録

証明書を作るのに先立って、インターネットから見えるホスト名とドメイン名を決めておく必要があります。
ドメイン名を取得するとお金がかかるので、ここではwww.ieserver.netの無料ダイナミックDNSサービスを利用します。

まずは適当なWindowsPCなどで「新規ユーザ登録」を済ませてください。
そのあと、Redmineを動かすマシン上からDDNSのアドレス割り当てを修正します。

yum install lynx でテキストウェブブラウザをインストールし、lynxでiesever.netにアクセスして「IP登録」ボタンを押します。

手順

  1. sudo yum install lynx
  2. lynx https://ieserver.net
  3. ユーザ名(サブドメイン名)、ドメイン名、パスワードを入力して「IP登録」を押す
  4. キーボードのqを押してlynxを終了させる

DDNSのデータベースが書き換わるには4分程度かかるようです。経過後に、pingで応答があるか確かめてみましょう。

Lets's Encryptについて

~.dip.jpだと「既にたくさんのドメインが登録されているので要求を受け付けない」と出てきたのですが、~.orz.hmまたは~.myhome.cxだとLet's Encryptから証明書の取得ができました(2017/5/20調べ)。それがダメだったら、オレオレ証明書を使う方法を検討してください。

ApacheにSSL接続をするための方法


Count of this page : 949

Updated by mole lord about 2 years ago · 5 revisions