昨日Twitterのタイムラインを賑わしていたTwitterライクなマイクロSNSサービス?のオープンソース版的なソフトウェア「MASTODON」を自宅サーバーに導入してみました。
必要なのは、PostgreSQL, nodejs, iojs, redis, ruby-2.4.1, rails, nginxということで、早速セットアップしてみました。
このドキュメントでもDockerを使う説明ばかりだったのですが、ここでは自前で導入しました。
というわけで、覚えている限りでの作業メモ。
前提ソフトウェアのインストール
PostgreSQL, redis, nginxはArchLinuxでpacmanから導入
# pacman -S redis postgresql, nginx
nodejs, iojsはnvmから導入
実際のコマンドは後程書きます。(たぶん)
ruby-2.4.1はrvmから導入
実際のコマンドは後程書きます。(たぶん)
railsなどは、rvmから導入したrubyのgemで導入
(nodejsインストール) (iojsインストール) (ruby2.4.1インストール) (bundle rake railsをgemからインストール) $ export NODE_ENV=production $ export RAILS_ENV=production .env.productionを.env.production.sampleを元に編集 $ bundle install $ bundle exec rails db:setup $ bundle exec rails assets:precompile Railsフロントエンド起動 $ rails server SideKick(バックグラウンドJOB実行用)起動 $ bundle exec sidekiq -P ${pidfile} -L ${logfile} -c 5 -q default -q mailers -q pull -q push WebSocket用nodejs起動 npm start
あとは、これらをSupervisorやsystemctlから実行できるようにShellScript作ったり、リバースプロキシ&SSL処理用にnginxやcertbot、バックエンド用にredis、mailgun、postgreSQLなどがあり色々大変。