LoginSignup
1
0

More than 5 years have passed since last update.

質疑応答アプリ「ama」を動かしてみる

Posted at

このまえのRailsdmで発表への質問を受け付けるのに使われてた「ama」というアプリが良さげだったので、試しに手元で動かしてみた。

ほとんどREADME.mdに書かれてるとおりにやればいいけど、自分のメモのために書いておく。

ローカルで動かす

Ruby 2.6.1とPostgreSQLが必要なのであらかじめセットアップしておく。

rbenvを使っているなら、Ruby 2.6.1を使うように設定。

$ rbenv local 2.6.1

DB接続情報を.envに設定:

.env
DATABASE_HOST=127.0.0.1
DATABASE_USERNAME=postgres

(好みで)gemをアプリ配下にインストールするように設定:

$ bundle config --local path .bundle

setupコマンド実行:

$ bin/setup

Github認証の設定。

アプリが登録されて、Client IDとClient Secretが発行されるので.envに追記:

.env
GITHUB_OAUTH_CLIENT_KEY=xxx
GITHUB_OAUTH_CLIENT_SECRET=xxx

以上で設定完了。railsサーバを起動する:

$ bin/rails s

ブラウザで http://localhost:3000/ にアクセスするとトップページが表示される。

Dockerで動かす

イメージをビルド:

$ docker-compose build

setupコマンド実行:

$ docker-compose run --rm app bin/setup

ローカル実行時と同じようにGithub認証を設定。

起動:

$ docker-compose up -d

ブラウザで http://localhost:3000/ にアクセスするとトップページが表示される。

管理者権限をつける

usersテーブルのrole列に1(admin)を設定すると管理者になる。
rails consoleで設定するならこんなかんじ:

$ bin/rails c
> user = User.find_by(nickname: 'okonomi')
> user.role = 'admin'
> user.save

管理者になると、Issueの新規作成・編集・削除ができたり、他の人のコメントの編集・削除ができるようになる。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0