Hatena::ブログ(Diary)

日記

 | 

2017-02-12

 EC2インスタンスで再設定
 東京だからか(nanoでなく)microだからか、非常にサクサク動く。

 いまセキュリティグループで「任意の場所」を設定したら、ipv6も考慮されるのか...。


 フレームワーク学ぶ時、tree --charset=Cが便利
rails generate controller hello
rails destroy controller hello


 早速、ファイル編集がめんどい
 とりあえずローカルに全部落としてきた。
 sublimeの、ディレクトリのツリーを表示するサイドバーこれまで表示してなかったけど、フレームワーク学ぶとき絶対いる。
 Project -> Add Folder to Projectでフォルダ指定して、View -> Side Bar -> Show Side Bar。


 codedeployやってみる
聖典
http://dev.classmethod.jp/cloud/aws/codedeploy-ruby-on-rails/

CodeDeploy agentとやらがいるらしい。
http://docs.aws.amazon.com/codedeploy/latest/userguide/how-to-run-agent-install.html

rubyのパスが違うので修正せねば
$ sudo ./install auto
/usr/bin/env: ruby: No such file or directory
$ which ruby
~/.rbenv/shims/ruby


./installの1行目を修正してみる

#!/usr/bin/env ruby
 ↓
#!/home/ec2-user/.rbenv/shims ruby

うーむ、権限エラーが出る。。。

$ cat /home/ec2-user/.rbenv/shims/ruby
これはbashスクリプト


whereisの方が良いのか。
$ which ruby
~/.rbenv/shims/ruby
$ whereis ruby
ruby: /usr/lib64/ruby /usr/share/ruby /home/ec2-user/.rbenv/shims/ruby

いや、そのままで良いのか?

http://yami-beta.hateblo.jp/entry/2013/05/14/203600

これが原因?
http://d.hatena.ne.jp/japanrock_pg/20090527/1243426081

$ sudo /usr/bin/env ruby -v
ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-linux]
sudoでいけるようになった。

しかしダメ
==========================================================================================
AWS CodeDeploy needs Ruby version 2.0 or above to be installed for root under /usr/bin

Please install Ruby 2.x for user root
==========================================================================================

error: %pre(codedeploy-agent-1.0-1.1067.noarch) scriptlet failed, exit status 1
Error in PREIN scriptlet in rpm package codedeploy-agent-1.0-1.1067.noarch
Verifying : codedeploy-agent-1.0-1.1067.noarch 1/1

Failed:
codedeploy-agent.noarch 0:1.0-1.1067

Complete!
E, [2017-02-12T03:52:57.111198 #30170] ERROR -- : Error installing /tmp/codedeploy-agent-1.0-1.1067.noarch.tmp-20170212-30170-5ymtk4.rpm.


これかと思ったけど、いまは2.xでいけるはず
念のため2.0.xでやってみたけどダメ
http://redmoon1982.hatenablog.com/entry/2015/11/18/122922


コード見てみた。
Currently recommanded Ruby versions are 2.0.0, 2.1.8, 2.2.4 and 2.3.0.

いま2.2.2使っている
2.3.0で試してみる...しかし無理!!

素直に指示通り、yum installでruby入れよう...
無事にインストールできた。

すぐにyum remove ruby×2してみた。
$ sudo service codedeploy-agent status
/usr/bin/env: ruby: No such file or directory
うーむ、やはり必要なのか。
再度sudo yum install ruby -y。
無事動いた。
$ sudo service codedeploy-agent status
The AWS CodeDeploy agent is running as PID 24592


appspec.ymlはどこに置けばいいんだろう
ルートに置けばいいのか
リポジトリはどういう構造にしておけばいいんだろう...
.git/とapp/とかbin/とかは同じ階層にしておけばいいのか...?
何もかもわかっていない


本の通りにcontrollerとrouteをいじって、サンプルが動くようにしておいた。
これで、手元でコードいじってpushした時に変更が反映されていればOK、という感じで確認できる。




まずCodeDeployをいろいろ設定して環境を作ろうと思ったけど、そもそもデプロイってなんなのかわかってない。
ガーーーっと本を読んで知識入れてからCodeDeployの設定をして、それからあらためて手を動かして学ぶ

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/read-write/20170212/1486867577
 |