前回の記事:shogi-serverのソースを読んでいこうぜ(^~^)
make doc
make test-run
「 👆 今 18時4分なんだが、次の対局は 19時に始まるらしいぜ」
「 なんか 他のやつもサーバー立てるみたいだし、同じことになるかもしらん。 API ドキュメントでも先に読んでようぜ」
「 👆 19時に フラッドゲートがスタートしたんだが、誰もいないから終わったぜ」
「 れさかい と きふわらべちゃんを ログインさせておきましょう!」
「 4081番ポートは 純正のCSAプロトコルを使う無印のサーバーの方ねぇ」
「 これ、将棋サーバーの本体の入り口だぜ。Rubyのシェルスクリプト」
Start a thrift server
$ ./graphicserver --port 9090 -d ./public/images
「 👆 graphicserver
というシェルが無いから実行できないぜ」
「 👆 ramaze
というフレームワークが要るのかだぜ?」
RUN gem install rgl
RUN gem install ramaze # 要らないんじゃないか(^~^)?
ruby start.rb
start.rb:4:in `<main>': undefined method `/' for "/shogi-server/showgame":String (NoMethodError)
「 👆 2008年に便利な機能だったらしいぜ、 ramaze
」
「 Bonanzaが優勝した2年後で、コンピューター将棋が盛り上がってた頃だな。 ramaze
要らなくね?」
ruby 2.3.3p222 (2016-11-21) [x86_64-linux-gnu]
「 👆 rubyのバージョンは 2.1 以上あるんだけどな。 ramaze 用のコードが動かないぜ」
apt-get update
apt-get install -y rbenv
rbenv --version
rbenv 1.0.0
「 👆 Rubyのバージョンを上げるための rbenv のバージョンが旧いぜ」
📖 Debian 9 Stretch に rbenv をインストールして Ruby の最新バージョンを使う
apt install -y git
mkdir -p "$(rbenv root)"/plugins
git clone https://github.com/rbenv/ruby-build.git "$(rbenv root)"/plugins/ruby-build
apt install -y wget
apt install -y gcc-6 autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm3 libgdbm-dev
rbenv install --list
rbenv install 2.7.3
rbenv versions
# * system (set by /root/.rbenv/version)
# 2.7.3
rbenv global 2.7.3
rbenv versions
# system
# * 2.7.3 (set by /root/.rbenv/version)
export PATH="$(rbenv root)/shims:$PATH"
ruby --version
# ruby 2.7.3p183 (2021-04-05 revision 6847ee089d) [x86_64-linux]
echo 'export PATH="$(rbenv root)/shims:$PATH"' >> ~/.bash_profile
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
「 👆 なんか 旧いバージョン消されていくみたいだから、 Dockerfile も永続的に使える書き方ができないな」
[email protected]:/shogi-server/showgame# ruby start.rb
Traceback (most recent call last):
start.rb:4:in `<main>': undefined method `/' for "/shogi-server/showgame":String (NoMethodError)
ruby webserver
Traceback (most recent call last):
5: from webserver:180:in `<main>'
4: from webserver:148:in `main'
3: from webserver:148:in `new'
2: from webserver:40:in `initialize'
1: from webserver:40:in `open'
webserver:40:in `initialize': No connection could be made because the target machine actively refused it. - connect(2) for "localhost" port 4081 (Errno::ECONNREFUSED)
ruby webserver
webserver:73: warning: Object#timeout is deprecated, use Timeout.timeout instead.
「 何かに接続した気はしないぜ。 Windows だから? もしかして これも Docker化した方がいい?」
ruby webserver &
curl http://localhost:4081
LOGIN:incorrect
LOGIN:incorrect
LOGIN:incorrect
LOGIN:incorrect
LOGIN:incorrect
Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。
また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!
こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?
コメント