Buravo46's Note

学んだ事を書いていくブログです。

【DodontoF】どどんとふの構築

概要

TRPGプレイ用オンラインセッションシステム「どどんとふ」の構築

構築環境

  • OS
    CentOS7

手順

  • Ruby環境の構築
# Rubyに必要なRPMのインストールやyumの更新
yum install -y git
yum install -y gcc-c++
yum install -y glibc-headers
yum install -y openssl-devel
yum install -y readline
yum install -y libyaml-devel
yum install -y readline-devel
yum install -y zlib
yum install -y zlib-devel
yum update -y
# Rubyのバージョン管理ツールの導入
git clone https://github.com/sstephenson/rbenv.git /usr/local/rbenv
echo 'export RBENV_ROOT="/usr/local/rbenv"' >> /etc/profile
echo 'export PATH="${RBENV_ROOT}/bin:${PATH}"' >> /etc/profile
echo 'eval "$(rbenv init -)"' >> /etc/profile
source /etc/profile
rbenv --version
# rbenv installコマンドを提供するrbenvのプラグインの導入
git clone https://github.com/sstephenson/ruby-build.git /usr/local/rbenv/plugins/ruby-build
# Rubyのインストール
rbenv install -l
rbenv install -v 2.3.4
rbenv rehash
rbenv global 2.3.4
ruby -v
  • パッケージのインストール
# パッケージのインストール
yum install -y ruby httpd wget unzip
# 設定ファイルの編集
vim /etc/httpd/conf/httpd.conf

# 131行目(/var/www/html)設定の下か一番下にでも記述する
<Directory "/var/www/html/DodontoF">
  DirectoryIndex DodontoF.swf
  Options ExecCGI
</Directory>

# 266行目ぐらい。
<IfModule mime_module>
  # CGIのハンドラにRubyを加える。
  AddHandler cgi-script .cgi .rb

  # (直接は関係しないが、mod_fcgidの場合はこうする)
  # AddHandler fcgid-script .rb
</IfModule>
  • どどんとふ構築
wget http://www.dodontof.com/DodontoF/DodontoF_Ver.1.48.32.1.zip
mv DodontoF_Ver.1.48.32.1.zip /var/www/html
cd /var/www/html
unzip DodontoF_Ver.1.48.32.1.zip
ls
mv DodontoF_WebSet/* .
ls
mv public_html/* .
rm -rf DodontoF_WebSet/ public_html/
mv saveData ..
ls
ls ../
  • どどんとふ設定
# ローカル用の設定ファイルのコピー
cp -p DodontoF/src_ruby/config.rb DodontoF/src_ruby/config_local.rb
# 設定ファイルの編集
vim DodontoF/src_ruby/config_local.rb

# 設定内容
$aboutMaxLoginCount = 48 # ログインできそうな人数(警告を発する人数)
$limitLoginCount    = 64 # 最大ログイン可能数
$saveDataMaxCount   = 50 # 部屋数
$chatMessageDataLogAllLineMax = 15000 # 記録するチャット行数

# パスはDodontoFServer.rbが基準。
$SAVE_DATA_DIR  = "../../"               # /savedataへのパス
$imageUploadDir = "../imageUploadSpace"  # /imageUploadSpaceへのパス

$mentenanceModePassword = "password" # メンテ時(?mode=admin)のパスワード
$createPlayRoomPassword = ""             # 部屋作成時にパスワードが必要か(指定するとON)

$isMessagePackInstalled    = true        # msgpack導入時trueにする(下記参照)
$canUseExternalImageModeOn = true        # 外部URL参照可能か否か
chown -R apache:apache ../*
chmod -R 705 DodontoF/saveDataTempSpace
chmod -R 705 DodontoF/fileUploadSpace
chmod -R 705 DodontoF/replayDataUploadSpace
chmod -R 705 ../saveData
chmod -R 705 imageUploadSpace
chmod 700 DodontoF/DodontoF*.rb
chmod 600 DodontoF/log.txt*
  • サーバーCGIの編集
# Rubyのファイルパスの確認
which ruby
# DodontoFServerの編集
vim DodontoF/DodontoFServer.rb

# which rubyで出たファイルパスへ書き換えること。
#!/usr/local/rbenv/shims/ruby -EUTF-8
  • msgpackの導入
yum install -y ruby-devel
gem install msgpack
  • msgpackの設定追加
# vim DodontoF/src_ruby/config_local.rb
# 追記
$isMessagePackInstalled = true
  • ファイアーウォール停止
systemctl stop firewalld
  • 起動
systemctl start httpd
  • ページへのアクセス
http://<IPアドレス>/DodontoF/DodontoFServer.rb

参考サイト

http://qiita.com/AkagiCrafter/items/64d266df4d2320abb77b

https://www.adminweb.jp/apache/allow/index1.html

https://qiita.com/kotet/items/ec6701540ea336083405

https://qiita.com/fusagiko/items/fd5aeb36f493319ab961