【ハンズオン】Redmineサーバーを建てる
yuki476さん主催
目的:Redmineサーバーを建てる
必要になったので自宅にRedmineを建てる過程を配信して、 ついでにハンズオンセッションにする。環境は以下を使用。 CentOS 7.5 Redmine 3.4.8 ApacheではなくNginxに載せる
公式
http://blog.redmine.jp/articles/3_4/install/centos/
構築
- 開発ツールのインストール
yum -y groupinstall base "Development tools" --setopt=group_package_types=mandatory,default,optional
yum -y install openssl-devel readline-devel zlib-devel curl-devel libyaml-devel libffi-devel
yum -y install postgresql-server postgresql-devel
yum -y install ImageMagick ImageMagick-devel ipa-pgothic-fonts
Nginxで動かすのでApacheは入れません
- git で rbenvを取ってくる
git clone https://github.com/rbenv/rbenv.git /usr/local/rbenv
- rbenvがver.切り替えなどに使うためのディレクトリ作成。
mkdir /usr/local/rbenv/shims mkdir /usr/local/rbenv/versions
rbenvのパスを通す
echo 'export RBENV_ROOT=/usr/local/rbenv' | sudo tee -a /etc/profile.d/rbenv.sh echo 'export PATH="$RBENV_ROOT/bin:$PATH"' | sudo tee -a /etc/profile.d/rbenv.sh echo 'eval "$(rbenv init -)"' | sudo tee -a /etc/profile.d/rbenv.sh
追加したパスをロードする
source /etc/profile.d/rbenv.sh rbenv -v rbenv 1.1.1-40-g483e7f9
visudoで追加①
Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/rbenv/bin:/usr/local/rbenv/shims
visudoで追加②
Defaults env_keep += "RBENV_ROOT"
git clone https://github.com/rbenv/ruby-build.git /usr/local/rbenv/plugins/ruby-build
sh /usr/local/rbenv/plugins/ruby-build/install.sh
rbenv install -l | grep 2.4
Ruby 2.4.5 のインストール
rbenv install 2.4.5
rbenv global 2.4.5
cd /usr/local/
gem install bundler -v 2.0.0
gem update --system
gem list --local
PostgreSQLの初期設定 postgresql-setup initdb 自動起動にしてスタート
systemctl enable postgresql.service systemctl start postgresql.service
postgresql操作のため移動
cd /var/lib/pgsql
Redmine用ユーザを追加
sudo -u postgres createuser -P redmine
Redmine用ユーザを作成する時のパスワードは後で使うので忘れないように
psgreの設定追加
cat data/pg_hba.conf | grep redmine
Redmine用DBの作成
sudo -u postgres createdb -E UTF-8 -l ja_JP.UTF-8 -O redmine -T template0 redmine
git を使ってRedmineを取ってくる
git clone https://github.com/redmine/redmine.git /var/lib/redmine
ver.指定するためディレクトリ移動
cd /var/lib/redmine/
ローカルにブランチ 3.4-stableを切ってリモートの3.4に紐付ける
git branch 3.4-stable origin/3.4-stable
作ったローカルの 3.4-stableに移動
git checkout 3.4-stable
ブランチについてはこれでも可能?(ブランチ指定で取得)
git clone --depth 1 -b 3.4-stable https://github.com/redmine/redmine.git /var/lib/redmine
/var/lib/redmine/config でexampleをコピーして設定ファイルを作る cp configuration.yml.example configuration.yml
メール通知設定はしないので configuration.ymlはそのまま
DBとの接族ファイルを作成
cp database.yml.example database.yml
DB接続の設定
cp database.yml.example database.yml
vim database.yml
cat database.yml
Password: の設定値は
Redmine用ユーザを追加 sudo -u postgres createuser -P redmine
で設定したパスワードと一致させる
production adapter: postgresql database:redmine host:localhost username:redmine password:"postgres"
rbenv rehash
gemパッケージのインストール
rbenv exec bundle install --without development test --path vendor/bundle
セッション改ざん防止用秘密鍵の作成
rbenv exec bundle exec rake generate_secret_token
一度 postgreを再起動
systemctl restart postgresql.service
RAILS_ENV=production rbenv exec bundle exec rake db:migrate
DBにデフォルトデータをロード
RAILS_ENV=production REDMINE_LANG=ja rbenv exec bundle exec rake redmine:load_default_data
DBにデフォルトデータをロード
RAILS_ENV=production REDMINE_LANG=ja rbenv exec bundle exec rake redmine:load_default_data
cat /etc/yum.repos.d/nginx-mainline.repo
[nginx-mainline] name=nginx mainline-repository baseurl=http://nginx.org/packages/mainline/centos/7/$basearch/ gpgcheck=0 enabled=1
yumでインストール
yum install nginx
yum install passenger
Passenger root /usr/share/passenger//phusion_passenger/locations.ini Passenger_ruby /usr/local/rbenv/versions/2.4.5/bin/ruby /etc/nginx/conf.d/passenger.confの中身↓ passenger_root /usr/share/ruby/vendor_ruby/phusion_passenger/locations.ini; passenger_ruby /usr/local/rbenv/versions/2.4.5/bin/ruby; passenger_instance_registry_dir /var/run/passenger-instreg; Firewallに HTTP許可 firewall-cmd --add-service=http
本日時点では成功せず、後日Qiitaにまとめる!