【AWS cloud9 Rails scaffold】RubyテンプレートからRails5.2.0をインストールしてやっと簡易アプリ成功!

Ruby

■1.テンプレートはRubyで作成する
テンプレート作成の仕方はこちらを参考に↓
AWS Cloud9でRuby on Railsを動かすには設定が必要だった!超初心者にもできたよ-その2 Code Star コンソールのセットアップ-
今回はテンプレートの選択のところは「Ruby(Sinatora) Amazon EC2」を選択します。

■2.テンプレートを開くと最初にターミナルに出てくるやつを実行する。これは初回に開いた時のみ表示される。


・2-1


Navigate to your cloned repository by typing “cd /home/ec2-user/environment/rails-app” to start working with “https://git-codecommit.us-east-2.amazonaws.com/v1/repos/Rails-app”

ターミナルに「cd /home/ec2-user/environment/rails-make」を入力する

・2-2

To set your display name run “git config –global user.name YOUR_USER_NAME”

ターミナルに「git config –global user.name お好きな名前」を入力する

To set your display email run “git config –global user.email YOUR_EMAIL_ADDRESS”

ターミナルに「git config –global user.email アドレス」を入力する
※gitにコミットする名前などを登録しておくため

■3.メインディレクトリに移動してRailsインストール
コマンドは
$ cd rails-app
$ gem install rails


ec2-user:~/environment user@computer$ cd rails-app
ec2-user:~/environment/rails-app (master) user@computer$ gem install rails


Fetching: rails-5.2.0.gem (100%)
Successfully installed rails-5.2.0
Parsing documentation for rails-5.2.0
Installing ri documentation for rails-5.2.0
Done installing documentation for rails after 0 seconds
1 gem installed

と出た。

バージョン確認をして


ec2-user:~/environment/rails-app (master) user@computer$ rails -v
Rails 5.2.0

と出ればOK。

■4.アプリ作成用フォルダを作成
コマンドは
$ rails new demo


ec2-user:~/environment/rails-app (master) user@computer$ rails new demo
create
create README.md
create Rakefile
create .ruby-version
create config.ru
create .gitignore
create Gemfile
run git init from “.”
Intialized empty Git repository in /home/ec2-user/environment/rails-app/demo/.git/
create package.json
create app
create app/assets/config/manifest.js
create app/assets/javascripts/application.js
create app/assets/javascripts/cable.js
create app/assets/stylesheets/application.css
create app/channels/application_cable/channel.rb
create app/channels/application_cable/connection.rb
create app/controllers/application_controller.rb
create app/helpers/application_helper.rb
create app/jobs/application_job.rb
create app/mailers/application_mailer.rb
create app/models/application_record.rb
create app/views/layouts/application.html.erb
create app/views/layouts/mailer.html.erb
create app/views/layouts/mailer.text.erb
create app/assets/images/.keep
create app/assets/javascripts/channels
create app/assets/javascripts/channels/.keep
create app/controllers/concerns/.keep
create app/models/concerns/.keep
create bin
create bin/bundle
create bin/rails
create bin/rake
create bin/setup
create bin/update
create bin/yarn
create config
create config/routes.rb


中略


Fetching sass-rails 5.0.7
Installing sass-rails 5.0.7
Fetching selenium-webdriver 3.11.0
Installing selenium-webdriver 3.11.0
Fetching spring 2.0.2
Installing spring 2.0.2
Fetching spring-watcher-listen 2.0.1
Installing spring-watcher-listen 2.0.1
Fetching sqlite3 1.3.13
Installing sqlite3 1.3.13 with native extensions
Fetching turbolinks-source 5.1.0
Installing turbolinks-source 5.1.0
Fetching turbolinks 5.1.1
Installing turbolinks 5.1.1
Fetching uglifier 4.1.10
Installing uglifier 4.1.10
Fetching web-console 3.6.1
Installing web-console 3.6.1
Bundle complete! 18 Gemfile dependencies, 78 gems now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
run bundle exec spring binstub –all
* bin/rake: spring inserted
* bin/rails: spring inserted

と出た。
ここで見慣れたRailsのディレクトリツリーがたくさんお目見え。

■5.demoに移動してscaffold
scaffoldコマンドは
$ rails g scaffold blog title:string body:text


ec2-user:~/environment/rails-app (master) user@computer$ cd demo
ec2-user:~/environment/rails-app/demo (master) user@computer$ rails g scaffold blog title:string body:text
Running via Spring preloader in process 5101
invoke active_record
create db/migrate/20180428142126_create_blogs.rb
create app/models/blog.rb
invoke test_unit
create test/models/blog_test.rb
create test/fixtures/blogs.yml
invoke resource_route
route resources :blogs
invoke scaffold_controller
create app/controllers/blogs_controller.rb
invoke erb
create app/views/blogs
create app/views/blogs/index.html.erb
create app/views/blogs/edit.html.erb
create app/views/blogs/show.html.erb
create app/views/blogs/new.html.erb
create app/views/blogs/_form.html.erb
invoke test_unit
create test/controllers/blogs_controller_test.rb
create test/system/blogs_test.rb
invoke helper
create app/helpers/blogs_helper.rb
invoke test_unit
invoke jbuilder
create app/views/blogs/index.json.jbuilder
create app/views/blogs/show.json.jbuilder
create app/views/blogs/_blog.json.jbuilder
invoke assets
invoke coffee
create app/assets/javascripts/blogs.coffee
invoke scss
create app/assets/stylesheets/blogs.scss
invoke scss
create app/assets/stylesheets/scaffolds.scss

おぉ!作成された!!😊

■6. migrate
コマンドは
$ rails db:migrate


ec2-user:~/environment/rails-app/demo (master) user@computer$ rails db:migrate
== 20180501132207 CreateBlogs: migrating ======================================
— create_table(:blogs)
-> 0.0024s
== 20180501132207 CreateBlogs: migrated (0.0034s) =============================

と出た!

■7.このまま、コミットして、masterにpushします。
コマンドは
$ git add .
$ git commit -m ‘blogs追加’


ec2-user:~/environment/rails-app/demo (master) user@computer$ git add .
ec2-user:~/environment/rails-app/demo (master) user@computer$ git commit -m ‘blogs追加’ [master (root-commit) 85a5a94] blogs追加
99 files changed, 1654 insertions(+)
create mode 100644 .gitignore
create mode 100644 .ruby-version
create mode 100644 Gemfile
create mode 100644 Gemfile.lock
create mode 100644 README.md
create mode 100644 Rakefile
create mode 100644 app/assets/config/manifest.js
create mode 100644 app/assets/images/.keep
create mode 100644 app/assets/javascripts/application.js
create mode 100644 app/assets/javascripts/blogs.coffee
create mode 100644 app/assets/javascripts/cable.js
create mode 100644 app/assets/javascripts/channels/.keep
create mode 100644 app/assets/stylesheets/application.css
create mode 100644 app/assets/stylesheets/blogs.scss
create mode 100644 app/assets/stylesheets/scaffolds.scss
create mode 100644 app/channels/application_cable/channel.rb
create mode 100644 app/channels/application_cable/connection.rb
create mode 100644 app/controllers/application_controller.rb
create mode 100644 app/controllers/blogs_controller.rb
create mode 100644 app/controllers/concerns/.keep
create mode 100644 app/helpers/application_helper.rb
create mode 100644 app/helpers/blogs_helper.rb
create mode 100644 app/jobs/application_job.rb
create mode 100644 app/mailers/application_mailer.rb
create mode 100644 app/models/application_record.rb
create mode 100644 app/models/blog.rb
create mode 100644 app/models/concerns/.keep
create mode 100644 app/views/blogs/_blog.json.jbuilder
create mode 100644 app/views/blogs/_form.html.erb
create mode 100644 app/views/blogs/edit.html.erb
create mode 100644 app/views/blogs/index.html.erb
create mode 100644 app/views/blogs/index.json.jbuilder
create mode 100644 app/views/blogs/new.html.erb
create mode 100644 app/views/blogs/show.html.erb
create mode 100644 app/views/blogs/show.json.jbuilder
create mode 100644 app/views/layouts/application.html.erb
create mode 100644 app/views/layouts/mailer.html.erb
create mode 100644 app/views/layouts/mailer.text.erb
create mode 100755 bin/bundle
create mode 100755 bin/rails
create mode 100755 bin/rake
create mode 100755 bin/setup
create mode 100755 bin/spring
create mode 100755 bin/update
create mode 100755 bin/yarn
create mode 100644 config.ru
create mode 100644 config/application.rb
create mode 100644 config/boot.rb
create mode 100644 config/cable.yml
create mode 100644 config/credentials.yml.enc
create mode 100644 config/database.yml
create mode 100644 config/environment.rb
create mode 100644 config/environments/development.rb
create mode 100644 config/environments/production.rb
create mode 100644 config/environments/test.rb
create mode 100644 config/initializers/application_controller_renderer.rb
create mode 100644 config/initializers/assets.rb
create mode 100644 config/initializers/backtrace_silencers.rb
create mode 100644 config/initializers/content_security_policy.rb
create mode 100644 config/initializers/cookies_serializer.rb
create mode 100644 config/initializers/filter_parameter_logging.rb
create mode 100644 config/initializers/inflections.rb
create mode 100644 config/initializers/mime_types.rb
create mode 100644 config/initializers/wrap_parameters.rb
create mode 100644 config/locales/en.yml
create mode 100644 config/puma.rb
create mode 100644 config/routes.rb
create mode 100644 config/spring.rb
create mode 100644 config/storage.yml
create mode 100644 db/migrate/20180428142126_create_blogs.rb
create mode 100644 db/schema.rb
create mode 100644 db/seeds.rb
create mode 100644 lib/assets/.keep
create mode 100644 lib/tasks/.keep
create mode 100644 log/.keep
create mode 100644 package.json
create mode 100644 public/404.html
create mode 100644 public/422.html
create mode 100644 public/500.html
create mode 100644 public/apple-touch-icon-precomposed.png
create mode 100644 public/apple-touch-icon.png
create mode 100644 public/favicon.ico
create mode 100644 public/robots.txt
create mode 100644 test/application_system_test_case.rb
create mode 100644 test/controllers/.keep
create mode 100644 test/controllers/blogs_controller_test.rb
create mode 100644 test/fixtures/.keep
create mode 100644 test/fixtures/blogs.yml
create mode 100644 test/fixtures/files/.keep
create mode 100644 test/helpers/.keep
create mode 100644 test/integration/.keep
create mode 100644 test/mailers/.keep
create mode 100644 test/models/.keep
create mode 100644 test/models/blog_test.rb
create mode 100644 test/system/.keep
create mode 100644 test/system/blogs_test.rb
create mode 100644 test/test_helper.rb
create mode 100644 tmp/.keep
create mode 100644 vendor/.keep

■8.gitに正常に登録できたか確認する
コマンドは
$ git status


ec2-user:~/environment/rails-app/demo (master) user@computer$ git status
On branch master
nothing to commit, working tree clean

$ git status
と叩いて「nothing to commit, working directory clean」と出れば正常に登録されている

■9.コミット履歴を確認する
コマンドは
$ git log


ec2-user:~/environment/rails-app/demo (master) user@computer$ git log
commit 85a5a94c3ec74f89e84f11e19732877b32738342 (HEAD -> master)
Author: 登録した名前 <アドレス@xxxx.com>
Date: Tue May 1 13:25:53 2018 +0000

blogs追加


記憶に新しいコミットメモが表示されればOK!

■10.新しいターミナルを開きメインディレクトリ「rails-app/demo 」まで移動してサーバーを起動(実行する)
コマンドは
$ rails server -b $IP -p $PORT


ec2-user:~/environment user@computer$ cd rails-app/demo
ec2-user:~/environment/rails-app/demo (master) user@computer$ rails server -b $IP -p $PORT

■11.


=> Booting Puma
=> Rails 5.2.0 application starting in development
=> Run `rails server -h` for more startup options
Puma starting in single mode…
* Version 3.11.4 (ruby 2.4.1-p111), codename: Love Song
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://127.0.0.1:8080
Use Ctrl-C to stop ←ここで一旦ストップ

ここで途中でログが一旦ストップするが、上のPreviewのPreview Running Applicationを実行する。Browser隣のアイコンをクリックしてブラウザを開き、

Yay! You’re on Rails!

と出たらサーバー起動成功!

 

■12.アプリを開くURLを調べてブラウザで見てみよう!
app/config/routes.rbを開いてみて、下記のディレクトリ名を確認する
————————————
resources ‘ディレクトリ名’
————————————
今回はblogsになっていたので


resources :blogs

ブラウザに
https://xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.vfs.cloud9.us-east-2.amazonaws.com/blogs/
と入力するとアプリを開くことができます!!

【サーバー起動後ブラウザがエラーになることもある】
例)
エラー「RoutingError (No route matches [GET] “/rails-app/demo/blogs”):」と出た。これはPreview Running ApplicationのURLが違うためである。
Preview Running Applicationで開いたときのURLを修正する

修正前:https://xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.vfs.cloud9.us-east-2.amazonaws.com/rails-app/demo/blogs
修正後:https://xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.vfs.cloud9.us-east-2.amazonaws.com/blogs/

 

■13.サーバーをストップしたいときは
$ Ctrl-C
で終了する。

コメント

タイトルとURLをコピーしました