redmine設定手順

■環境
【背景】
業務でRedmineを構築してプラグインの作成まで触ったので、それを自分の端末でも構築してみようといったのが経緯です。
業務ではプロキシーをかませていたのですが、この手順では一般回線で構築していったのでその記述は省いています。

【構築環境】
※ VMware Workstation 15 Player で構築しましたが、オンプレでの作業と変わりはないと考えています。
[OS]
CentOS Linux release 7.7.1908 (Core)

[Redmine構築環境(Redmine→管理→情報から引用)]
Environment:
   Redmine version                4.2.1.stable.21047
   Ruby version                   2.5.9-p229 (2021-04-05) [x86_64-linux]
   Rails version                  5.2.6
   Environment                    production
   Database adapter               PostgreSQL
   Mailer queue                   ActiveJob::QueueAdapters::AsyncAdapter
   Mailer delivery                smtp
 SCM:
   Subversion                     1.7.14
   Git                            1.8.3.1
   Filesystem                     
 Redmine plugins:
   no plugin installed
■手順
### CentOSの設定
##### SELinuxの無効
 vi /etc/sysconfig/selinux

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled

##### 再起動
 reboot

##### SELINUXの確認
 getenforce
 → Disabled

##### firewalldでHTTPを許可
 ●httpの追加
  firewall-cmd --zone=public --add-service=http --permanent
  → success
 ●firewallの再読み込み(追加の反映)
  firewall-cmd --reload
  → success
 ●firewallの設定確認
  firewall-cmd --zone=public --list-services
  → dhcpv6-client http ssh

### 必要なパッケージのインストール
##### パッケージのインストール
 ●開発ツールのインストール
 yum -y groupinstall "Development Tools"
 ●ヘッダファイル等のインストール
 yum -y install openssl-devel readline-devel zlib-devel curl-devel libyaml-devel
 ●PostgreSQLとヘッダファイルのインストール
 yum -y install postgresql-server postgresql-devel
 ●Apacheとヘッダファイルのインストール
 yum -y install httpd httpd-devel
 ●ImageMagickとヘッダファイル、日本語フォントのインストール
 yum -y install ImageMagick ImageMagick-devel ipa-pgothic-fonts

### Rubyのインストール
 ●rootがソフトウェアをインストールするのでそのソースの保管場所へ移動
 cd /usr/local/src
 ●Rubyのソースコードをダウンロード
 curl -O https://cache.ruby-lang.org/pub/ruby/2.5/ruby-2.5.9.tar.gz
 ●Rubyのインストール
 tar xvf ruby-2.5.9.tar.gz
 cd ruby-2.5.9
 ./configure --disable-install-doc
 make
 make install
 ●Rubyのバージョン確認
 cd ..
 ruby -v

### bundlerのインストール
 ●Rybyのパッケージ管理ツールをインストール
 gem install bundler --no-rdoc --no-ri

### PostgreSQLの設定
 ●データベースクラスタの新規作成
 postgresql-setup initdb
 → Initializing database ... OK
 ●RedmineがPostgreSQLに接続するための設定
 vi /var/lib/pgsql/data/pg_hba.conf
 # Put your actual configuration here
 # ----------------------------------
 #
 # If you want to allow non-local connections, you need to add more
 # "host" records.  In that case you will also need to make PostgreSQL
 # listen on a non-local interface via the listen_addresses
 # configuration parameter, or via the -i or -h command line switches.
 host    redmine         redmine         127.0.0.1/32            md5
 host    redmine         redmine         ::1/128                 md5
 PostgreSQLの開始と自動起動設定
 systemctl start postgresql.service
 systemctl enable postgresql.service
 →Created symlink from /etc/systemd/system/multi-user.target.wants/postgresql.service to /usr/lib/systemd/system/postgresql.service.
 ●PostgreSQLのディレクトリに移動
 cd /var/lib/pgsql
 ●PostgreSQLのRedmineユーザーの作成
 sudo -u postgres createuser -P redmine
 →新しいロールのためのパスワード:**********{任意のパスワード}
   もう一度入力してください:**********{任意のパスワード}
 ●Redmine用のデータベースの作成
 sudo -u postgres createdb -E UTF-8 -l ja_JP.UTF-8 -O {任意のDB名} -T template0 redmine※ TODO質問する

##### Rednineのインストール
 ●Redmineのダウンロード(証明書の期限が切れている場合、一時的に承認をするため"t"を押下する)
 svn co https://svn.redmine.org/redmine/branches/4.2-stable /var/lib/redmine
 →'https://svn.redmine.org:443' のサーバ証明書の認証中にエラーが発生しました:
   - 証明書の期限が切れています。
   - 証明書に未知のエラーが起きました。
  証明書情報:
   - ホスト名: svn.redmine.org
   - 有効範囲: Wed, 08 Jan 2020 00:00:00 GMT から Sat, 08 Jan 2022 23:59:59 GMT まで
   - 発行者: Gandi, Paris, Paris, FR
   - フィンガープリント: 43:82:9e:5d:66:7e:a1:75:c5:ed:66:9a:bf:33:f3:59:6a:e5:ac:93
  拒否しますか (R)、一時的に承認しますか (t)? t

 ●データベースへ接続するための設定ファイルの作成
 cp /var/lib/redmine/config/database.yml.example /var/lib/redmine/config/database.yml
 vi /var/lib/redmine/config/database.yml

 # PostgreSQL configuration example
 production:
   adapter: postgresql
   database: redmine
   host: localhost
   username:**********{任意のユーザ名}
   password: "**********{任意のパスワード}"
   encoding: utf8
 
【ここ以外はすべてコメントアウトする】

 ●設定ファイル config/configuration.yml の作成
 cp /var/lib/redmine/config/configuration.yml.example /var/lib/redmine/config/configuration.yml
 vi /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

 ●Redmineのディレクトリへ移動
 cd /var/lib/redmine
 ●gemパッケージのインストール
 bundle install --without development test --path vendor/bundle

##### Redmineの初期設定と初期データ登録
 ●セッション改ざん防止用秘密鍵作成
 bundle exec rake generate_secret_token
 ●データベースのテーブル作成
 RAILS_ENV=production bundle exec rake db:migrate
 ●デフォルトデータの作成
 RAILS_ENV=production REDMINE_LANG=ja bundle exec rake redmine:load_default_data
##### Passengerのインストール
 ●Phusion Passengerをインストール
 gem install passenger -v 5.1.12 --no-rdoc --no-ri
 ●PassengerのApache用モジュールのインストール
 passenger-install-apache2-module --auto --languages ruby
 ●Apache用設定内容の確認(結果を控えておく)
 passenger-install-apache2-module --snippet
 
  (サンプル開始)
  LoadModule passenger_module /usr/local/lib/ruby/gems/2.5.0/gems/passenger-5.1.12/buildout/apache2/mod_passenger.so
  <IfModule mod_passenger.c>
    PassengerRoot /usr/local/lib/ruby/gems/2.5.0/gems/passenger-5.1.12
    PassengerDefaultRuby /usr/local/bin/ruby
  </IfModule>
  (サンプル終わり)
##### Apacheの設定
 ●/etc/httpd/conf.d/redmine.conf を作成
 vi /etc/httpd/conf.d/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 で表示されたものを使用すること。
#

##### 控えておいた5行をここに書く #####


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

Header always unset "X-Powered-By"
Header always unset "X-Runtime"
(書くの終わり)
 
 ●Apacheの起動の設定
 systemctl start httpd.service
 ●Apacheの自動起動の設定
 systemctl enable httpd.service
##### Apache上のPassengerでRedmineを実行するための設定
 ●権限の変更
 chown -R apache:apache /var/lib/redmine
 ●DocumentRootの変更
 vi /etc/httpd/conf/httpd.conf
 →DocumentRoot "/var/lib/redmine/public"
 ●Apacheの再起動
 service httpd configtest
 systemctl restart httpd.service

Leave a Comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です