Elastic Beanstalk Multi-container Dockerで環境が作成できない

インスタンスプロファイルに権限が無いのが原因だった。

Elastic Beanstalk インスタンスプロファイルを管理する - AWS Elastic Beanstalk にあるように、今回使用したインスタンスプロファイル aws-elasticbeanstalk-ec2-roleAWSElasticBeanstalkMulticontainerDocker など3つを追加したらちゃんと作成できた。

この aws-elasticbeanstalk-ec2-role はデフォルトで作られるし、今は↑のポリシーが入るようになっているけど、結構前に作ってそのままって人は1回はハマるんじゃないかなーと思ったり。

Mac + Microsoft Remote DesktopでWindows Server 2012のスタートスクリーンを表示する

キー配列によるのかもしれないが、Windows Server側がUSキーボード設定だと次のいずれかで表示できる。

  1. マウスを画面左下に持っていくと「スタート」というのがポップアップするので、それをクリック
  2. Macのcommandボタンを押す

わからなかったのでメモ。

Update environment operation is complete, but with errors.

eb deploy でこんなエラーが出て、デプロイできず。

Update environment operation is complete, but with errors. For more information, see troubleshooting documentation.

一つ前のバージョンをデプロイするも同じ。
awsebcliをupgradeするもダメ。
アプリケーション数の制限にも引っかかってないし。

結局、eb環境を作成し直して再度デプロイしたらうまくいった。

php artisanで"class not found"と出たら

いつも忘れるのでメモ。

$ php artisan db:seed --class=HogeSeeder


  [ReflectionException]
  Class HogeSeeder does not exist

Migrations & Seeding - Laravel - The PHP Framework For Web Artisans にあるとおり、このコマンドを実行

$ composer dump-autoload
Generating autoload files

通った。

$ php artisan db:seed --class= HogeSeeder
$

Jeetでコケた話

対処

2016.06.29時点だと、6.1.2に戻せば解消します。

github.com

エラー時のメッセージ

npm run gulp build で下記エラーが。

   13| @import 'node_modules/jeet/stylus/jeet'
---------------^
   14| @import 'node_modules/iconfonts/stylesheets/font-awesome'
   15| fa-font()
   16|

failed to locate @import file node_modules/jeet/stylus/jeet.styl

上記Issueを見て、6.1.2に戻す。

$ npm install jeet@6.1.2

ansible-galaxyでバージョン指定するとエラーになった

$ ansible --version
ansible 1.9.4
  configured module search path = None

Ansibleのroleをバージョン指定で使いたかったので、
YAMLファイルに記載して管理しようと。
で、次のように書いて実行するとエラーに・・orz

# requirement.yml(error-ver.)
- src: retr0h.logrotate
   version: 2.0

 

$ ansible-galaxy install -r requirements.yml -p roles --force
- executing: git clone https://github.com/retr0h/ansible-logrotate ansible-logrotate
Traceback (most recent call last):
  File "/usr/local/Cellar/ansible/1.9.4/libexec/bin/ansible-galaxy", line 959, in <module>
    main()
  File "/usr/local/Cellar/ansible/1.9.4/libexec/bin/ansible-galaxy", line 953, in main
    fn(args, options, parser)
  File "/usr/local/Cellar/ansible/1.9.4/libexec/bin/ansible-galaxy", line 796, in execute_install
    tmp_file = scm_archive_role(role_scm, role_src, role.get("version"), role.get("name"))
  File "/usr/local/Cellar/ansible/1.9.4/libexec/bin/ansible-galaxy", line 376, in scm_archive_role
    print "- executing: %s" % " ".join(archive_cmd)
TypeError: sequence item 4: expected string, float found

文字列のところが数値だからダメなんだそうで。
次のように書けば通った。
数値として認識されたんだなー

# requirement.yml(ok-ver.)
- src: retr0h.logrotate
   version: "2.0"

ということで、次のようなものは括らなくても大丈夫。

# requirement.yml(ok-ver.)
- src: geerlingguy.composer
   version: 1.4.0

Ansible Galaxy — Ansible Documentation には書いてないけど、どっかに書いてあるのかな・・