コンテンツに進む

Rails

タグ "Rails" の 6 件の記事

Rails環境のwarningなど - wsl

wsl(Windows Subsystem for Linux)のubuntuでRails環境を構築する際に、いくつかwarningが表示されたのでその対応を簡単に書いておきます。

ちなみに rails は、

rbenv install 2.6.5
rbenv global 2.6.5
gem install rails --no-document

でインストールできた前提です。
ここで例えば、

rails -v

として、

... warning: Insecure world writable dir /home/(username)/.rbenv/bin in PATH, mode 040777

のようなメッセージが表示される場合。

chmod go-w -R ~/.rbenv

として、group や others の書き込み権限を外しておくと良さそうです。同様に、

warning: Insecure world writable dir /mnt/c in PATH, mode 040777

/mnt あたりでパーミッションの問題が表示される場合。

参考:https://github.com/microsoft/WSL/issues/1426

/etc/wsl.conf を開いて(なければ新規作成)、

[automount]
options="metadata,umask=0033"

上記を書いて保存。wsl(ubuntu)のウインドウを一旦閉じて開くと設定が反映されます。wsl.conf の詳細はこちら。

参考:Manage and configure Windows Subsystem for Linux

Ruby on Rails 5 のローカル環境

Ruby on Rails 5をvagrantで環境構築していて少し引っ掛かったのでメモ書き。

主なレシピ

  • macOS 10.15.2
  • vagrant-box bento/centos-6.8
  • ruby 2.6.5
  • rails 5.1.7

Vagrantfileに下記を追加。

config.vm.network :forwarded_port, guest: 3000, host: 3000
config.vm.network "private_network", ip: "192.168.33.10"

rails s でサーバーを起動したところ、ホスト側(macOS)のブラウザから開けない。

This site can’t be reached

調べてみたところこの記事で解決しました。
can’t connect localhost:3000 ruby on rails in vagrant

rails s -b 0.0.0.0

Yay! You're on Rails!

ここで、サーバー起動で毎回オプションが必要なのもどうかと思ってさらに調べてみると、次の記事が見つかりました。
Railsチュートリアル経験者が引っかかりやすい、Railsのページが表示できないトラブル

Gemfileを確認すると、

# Use Puma as the app server
gem 'puma', '~> 3.7'

この部分を

gem 'puma', '3.9.1'

として bundle update したらrails s だけでホスト側のブラウザで開くことができました。

Rails Girls Ehime 2nd 開催準備のお手伝い

今年6月に開催された Rails Girls Ehime ですが、来年2月に2回目のイベントを開催するということで準備が始まりました。

1回目のイベントのツイートまとめはこちら。
Rails Girls Ehime - June 2019 のまとめ

ちなみに Girls と女子向けなのは Affirmative action というコンセプトがあるそうです。性別に関係なく働きやすい環境って大切ですよね。

ということで、次回イベントの参加登録ページなど準備(お手伝い)しています。コーチとしての参加もありますので、ご興味のある方、少しでもご経験のある方はぜひこの機会にご参加ください。

それと ehime.rb という愛媛の地域 Ruby・Rails コミュニティもあります。最近はオンラインで開催されているので、ご都合が合えばこちらもどうぞ。

Rails Girls Ehimeに参加しました

昨年末からehime.rbで少しずつですが Ruby on Rails を勉強していまして、 今回 Rails Girls Ehime が開催されたのでスタッフとして参加してきました。 スタッフといってもイベント当日のお手伝いは特にしていなくて、開催前のお手伝いでイベントのお知らせページの一部をGitHubで更新した程度です。マスターリポジトリをフォークして、ブランチを切ってファイルを編集。コミットしてPRを送ってマージされたらフェッチしてフォーク先を更新、みたいな手順を何度か行いました。これはこれでgit操作の勉強になりました。 イベント自体は2日目の土曜日のみお邪魔して参加者と同じ立場でRailsの環境づくりとチュートリアルを試しました。昨年末かあるいはその前だったか作成済みのRails環境があって、今回のチュートリアルの環境に合わせるにはいくつかバージョンアップが必要でした。

anyenvのrbenvを更新しました。(してなかった

— ‍♂️ (@kazweda) June 15, 2019

https://t.co/fSKmKFgCd3
platformsオプションを削除してbundle update

— ‍♂️ (@kazweda) June 15, 2019

herokuへのdeployをする際にherokuコマンドのバージョンアップを促すメッセージが出たので、更新を実行したところ更新できず。下記のherokuのドキュメントによると、どうやらnpmでのheroku(cli)のインストールはおすすめではないらしい。

The Heroku CLI | Heroku Dev Center https://t.co/feGOVy4DgU #rg_ehime

— ‍♂️ (@kazweda) June 15, 2019

で、なんとか環境が整ったのでチュートリアルを進めていきました。で、herokuへのdeployもできて、次の課題でファイルのアップロードに対応しようとしたところで、deployしたところでエラー発生。

Application error #rg_ehime pic.twitter.com/KhOy1Hww2m

— ‍♂️ (@kazweda) June 15, 2019

調べていくと、

https://t.co/CxQG7wSzJE

— ‍♂️ (@kazweda) June 15, 2019

Gemfileの編集で gem 'carrierwave' これを追加する場所がまずかったようです。(developmentの中にのみ書いていた) そんなこんなでエラーを起こしつつもherokuでの動作確認までできました。 あとLTで参考になるサイトとか書籍の紹介があったのでいくつか書いておきます。 Progate - Ruby on Rails5 Paizaラーニング - 「Ruby on Rails」入門講座 クロスコミュニティ四国 鎌玉のよしなしごと

ゼロからわかる Ruby 超入門 (かんたんIT基礎講座) 五十嵐 邦明 https://t.co/0GVpU2UICl via @amazonJP #rg_ehime

— ‍♂️ (@kazweda) June 15, 2019

Ruby on Rails 5アプリケーションプログラミング 山田 祥寛 https://t.co/niyL0NNonJ via @amazonJP #rg_ehime

— ‍♂️ (@kazweda) June 15, 2019

今後も引き続いてRailsの勉強会が愛媛で定期的に開催されるとのことで、プログラミング初心者の方もお気軽にご参加いただければと思います。 Rails Girls Ehime - June 2019 のまとめ

herokuまわり - Rails Tutorial

旧サイト記事の移行

明日の勉強会の準備。メモ書き程度です。 1.5.1 Herokuのセットアップ このあたりの作業中。 ndenvのnpmをインストール済みなので、

$ npm install -g heroku-cli

を試したところ、npm WARN ... 'heroku-cli' has been renamed 'heroku' と表示されたもののインストールはできた様子。 それと、cross-spawn no longer requires a build toolchain, use it instead という警告もあり。 cross-spawn-async cross-spawn

$ heroku --version
heroku/7.19.3 darwin-x64 node-v8.11.2
$ heroku login
ブラウザが開くのでログインします。

SSHキーを作成して登録。

$ ssh-keygen -t rsa -C "your.name@example.com" -f ~/.ssh/id_rsa_heroku
$ heroku keys:add
$heroku create
ブラウザで確認

herokuにデプロイ

$ git push heroku master

pushでrejected SQLite on Heroku ローカルのGemfileを編集したものの、コミットするのを忘れていました。(^^; herokuでgoodbye worldが表示されることを確認。

macOS で再起動しても ssh agent に秘密鍵を保持させ続ける二つの方法 OSのUpdateで再起動したようで、

$ ssh-add ~/.ssh/(秘密鍵)

が必要でした。