Herokuにデプロイまで行くぜ!

Gitはうまくいった。てこづったけど。

さて、気を取り直して進める。

第1章 ゼロからデプロイまで | Rails チュートリアル

Rails newを実行。
あれ・・・これさっき作ったフォルダの中に、フォルダ作らないといけないじゃん。
gitもまた設定し直しかよ。。 orz

cd .. で一つ階層をあげて、 rails new フォルダ名 に手動で作ったフォルダの名前をしたらどうなるんだろう。

ひとまずやってみよう。。。

 

・・・インストールはなんか出来ているっぽいな。

フォルダにも収まってるし。これは・・・いけるのか!?

1.5のbundle installをしてみる。

問題なさそうだ。。。もしかして順調?

rails s でサーバーを立ち上げ、ローカルホストにアクセス。

ヒャッハー! Your're on Rals!!


やったね!

Ctrl + C でサーバーを落とし。

git initでGitをセットアップ。

git add -A

git commit -m "Install ruby on rails"

git push


Bitbucketのコミットログをみると、バッチリ追加されてやがるぜコンチクショー!

やるじゃねぇか。

 

さて、デプロイするかのぉ。

Herokuのアカウントを作成し、newでappを作成。

リスト1.14のようにGemfileを変更しよう。

差分だけ編集して、下記のコマンドを入力。

bundle install --without production

 

そしてエラー。

[!] There was an error parsing `Gemfile`: You cannot specify the same gem twice with different version requirements.
You specified: sqlite3 (>= 0) and sqlite3 (= 1.3.11). Bundler cannot continue.


sqliteを2つ追加できないよという感じだね。

最初から入っている、 

# Use sqlite3 as the database for Active Record
gem 'sqlite3'

の部分削除してみよう。しらんけど。

 

bundle install アゲイン!

ふむ。同じエラーが発生。

gem 'sqlite3', '1.3.11'の、'1.3.11'を削除して、保存。

 

bundle install アゲイン!

Your Gemfile lists the gem sqlite3 (>= 0) more than once.
You should probably keep only one of them.
While it's not a problem now, it could cause errors if you change the version of one of th em later.

The dependency byebug (>= 0) will be unused by any of the platforms Bundler is installing for. Bundler is installing for x64-mingw32 but the dependency is only for ruby. To add tho se platforms to the bundle, run `bundle lock --add-platform mri`.

英語でごちゃごちゃうっさいねん。

なんか、今問題ないみたいだからインストールしてくれた。

よくわからんけど、進んだからまぁいっか。

 

Herokuツールをインストール

Heroku CLI | Heroku Dev Center

Windowsだから、64bit版を選んでダウンロード。

そのまま、言われるままにハイハイして進める。

そして、インストールを続行。

vim.exetssh-agent.exeが立ち上がっててインストールできないよ!!

どこで立ち上げてるのかさっぱりわからんから、タスクマネージャーより強制終了。

よし。進んだ。

本当はちゃんと意味を理解しないといけないと思うけど、まぁいいや。

 

インストール完了。もう一回、Git bushを立ち上げる。

heroku --version

を入力。

heroku-cli/5.8.5-614a805 (windows-amd64) go1.7.5

 

ウェーイ!ちゃんと表示された。

 

heroku login

お、メアド聞かれているぞ。

このメアドは前回の失敗もあるから、登録されているメアドにしよう。bitbucketと同じメアドだった。これは間違えなし。

 

カタカタカタ・・・エンター

 

Login is currently incompatible with git bash/Cygwin/MinGW

 

なんでやねん!!

Login is currently incompatible with git bash/cygwin - Stack Overflow

WindowsのCMDからログインしなきゃいけないみたい。

仕方がないな・・・CMDで検索。立ち上げ。

heroku login 。メアド入力。パスワード入力。

Logged in as 俺!

 

出来た。

これって、Heroku使う時に、WindowsのCMDが必要ってことなんかな。わからんけど、Git pushしてみるか。

 

Git bushで操作。

git push heroku master

 

fatal: 'heroku' does not appear to be a git repository
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

はいはい。でましたよ。いつもの。

 

とおもったら、heroku createを忘れていた。

create後に、再度 git push heroku master を入力 エンター。

・・・進んだ!!色々とアップロードされている!!

 

Herokuアプリにアクセスしたら表示されたけど、これで良いのかわからん。

 

チュートリアルの1.3.4を実行していなかったから、実行しよう。

class ApplicationController < ActionController::Base
  protect_from_forgery with: :exception

  def hello
    render html: "hello, world!"
  end
end
root 'application#hello'

rails s

で、http://localhost:3000/ にアクセスして、表示を確認

git add -A

git commit -m 'hello'

git push

 

LF will be replaced by CRLF in... というエラーが出てくる。

git add した時に出る改行コードのwarning対応 - 先がまっくろー

git config --global core.autoCRLF false

を入力してエンター。

わからんけどやってみる。それが俺の忍道

 

気を取り直して、git にpushまで完了。

Bitbucketにアップデート内容を確認。

git push heroku master

を実行。

To https://git.heroku.com/serene-cove-51815.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/serene-cove-51815.git'

なんでやねん!!ちくしょう。ちくしょう。

Helloは表示されず。。。ぐぬぬ

ちょっと今日はここまでで、ギブアップ。

次は、ここをみて再度挑戦しよう。

Heroku導入メモ · GitHub

 

明日また最初から試してみるかな。大きなため息がでるぜ。

ウェーイ。