Ruby - Ruby on Rails - サーバ起動 - 手順の組み立て

クラウディア 
1. 概要
2. scaffold
3. db:migrate
4. 起動

1. 概要

 前ページの作業を行ったのが、2018年です。  今回、前回の作業の結果をふまえて、手順を考えながらやってみます。

2. scaffold

 前回もやった、おまじないを唱えます。  ログインユーザ(rails の「OWNER」)で

> cd プロジェクトのパス
> rails generate scaffold post title:string body:text published:boolean
      invoke  active_record
      create    db/migrate/20201224003504_create_posts.rb
      create    app/models/post.rb
      invoke    test_unit
      create      test/models/post_test.rb
      create      test/fixtures/posts.yml
      invoke  resource_route
       route    resources :posts
      invoke  scaffold_controller
      create    app/controllers/posts_controller.rb
      invoke    erb
      create      app/views/posts
      create      app/views/posts/index.html.erb
      create      app/views/posts/edit.html.erb
      create      app/views/posts/show.html.erb
      create      app/views/posts/new.html.erb
      create      app/views/posts/_form.html.erb
      invoke    test_unit
      create      test/controllers/posts_controller_test.rb
      invoke    helper
      create      app/helpers/posts_helper.rb
      invoke      test_unit
      invoke    jbuilder
      create      app/views/posts/index.json.jbuilder
      create      app/views/posts/show.json.jbuilder
      create      app/views/posts/_post.json.jbuilder
      invoke  assets
      invoke    coffee
      create      app/assets/javascripts/posts.coffee
      invoke    scss
      create      app/assets/stylesheets/posts.scss
      invoke  scss
      create    app/assets/stylesheets/scaffolds.scss
 前回同様、なんの問題もなかったようです。

3. db:migrate

 これも、おまじないだな・・・。

$ cd プロジェクトのパス
$ rails db:migrate
== 20201224003504 CreatePosts: migrating ======================================
-- create_table(:posts)
   -> 0.0074s
== 20201224003504 CreatePosts: migrated (0.0074s) =============================

4. 起動

 あらかじめ、ホスト名が名前解決できるように、「DNS サーバ」あるいは、「/etc/hosts」をいじっておきます。

$ cd プロジェクトのパス
$ rails server
=> Booting Puma
=> Rails 5.0.7.2 application starting in development on http://localhost:3000
=> Run `rails server -h` for more startup options
Puma starting in single mode...
* Version 3.12.6 (ruby 2.6.6-p146), codename: Llamas in Pajamas
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://localhost:3000
Use Ctrl-C to stop
 うまく、起動できたかとおもいきや・・・。  外部のウェブブラウザから、アクセスできない・・・。  「Railsでlocalhost:3000にアクセスできないはこれをコピペで完結 - Qiita」を読んで、起動方法が変わったらしい。

$ cd プロジェクトのパス
$ bundle exec rails s -b 0.0.0.0
=> Booting Puma
=> Rails 5.0.7.2 application starting in development on http://0.0.0.0:3000
=> Run `rails server -h` for more startup options
Puma starting in single mode...
* Version 3.12.6 (ruby 2.6.6-p146), codename: Llamas in Pajamas
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://0.0.0.0:3000
Use Ctrl-C to stop
 外部のマシンのブラウザで

http://IPアドレス:3000/
 にアクセスすると、こういう表示になります。
「Ruby on Rails」-「Yay! You are on Rails!」

 サーバには、こういう表示が・・・(IPアドレスは、てけと~)。


Started GET "/" for 192.168.100.160 at 2020-12-24 10:23:44 +0900
Cannot render console from 192.168.100.160! Allowed networks: 127.0.0.1, ::1, 127.0.0.0/127.255.255.255
  ActiveRecord::SchemaMigration Load (0.4ms)  SELECT "schema_migrations".* FROM "schema_migrations"
Processing by Rails::WelcomeController#index as HTML
  Parameters: {"internal"=>true}
  Rendering /usr/local/lib/ruby/gems/2.6/gems/railties-5.0.7.2/lib/rails/templates/rails/welcome/index.html.erb
  Rendered /usr/local/lib/ruby/gems/2.6/gems/railties-5.0.7.2/lib/rails/templates/rails/welcome/index.html.erb (14.0ms)
Completed 200 OK in 29ms (Views: 19.1ms | ActiveRecord: 0.0ms)
 サーバを Ctrl+C で止めると  こんなん表示されます。

^C- Gracefully stopping, waiting for requests to finish
=== puma shutdown: 2020-12-24 10:28:01 +0900 ===
- Goodbye!
Exiting
 今度(2020年12月24日)は、前より、少し少ない手順で、ここまでこれました。
earthcar(アースカー)
健康サポート特集
損保との違い