PHPでAWSのSQSメッセージを処理する
受け取ったメッセージの処理ではまったのでメモ。
// メッセージを受け取る $result = $sqs->receiveMessage(array( 'QueueUrl' => $queueUrl['QueueUrl'], )); // Messagesを取得 $data = $result->get('Messages'); // null対策 if($data){ foreach($data as $item){ // Messagesの中身を取得 $res2 = json_decode($item['Body'], true); // さらにその中身を取得 $res3 = json_decode($res2['Message'], true); } }
で、ようやくキレイにデータがとれた。
S3→SNS→SQS やろうとしたらS3 Event設定ではまったのでメモ
イベント設定しようとしたら
The notification destination service region is not valid for the bucket location constraint
でハマる。ロケーションおかしいとか言われてもそもそもS3はコンソール画面右上にも
って書かれてるし、???と思ってたら見落としてた。バケット一覧でリージョンちゃんと書いてる…
SNSで使ってるリージョンと合わせたら治った。
処理順的には
CentOS7.4.x に ImageMagick6.9.x に入れるときにいろいろめんどくさかったのでメモ
CentOS Linux release 7.4.x (Core) (vagrant)にインスコ。
- 最初にまとめ。以下の順でやればいけるはず。
$ yum install https://rpmfind.net/linux/centos/7.4.1708/os/x86_64/Packages/libtool-ltdl-2.4.2-22.el7_3.x86_64.rpm $ yum install http://springdale.math.ias.edu/data/puias/computational/7/x86_64//openjpeg2-2.1.0-7.sdl7.x86_64.rpm $ yum install http://springdale.math.ias.edu/data/puias/computational/7/x86_64/openjpeg2-devel-2.1.0-7.sdl7.x86_64.rpm $ yum install http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/l/libraqm-0.1.1-1.el7.x86_64.rpm $# yum install ImageMagick6-6.9.9.38 ImageMagick6-devel-6.9.9.38 --enablerepo=remi
- 残りは作業ログとメモ。
$ yum install ImageMagick6-6.9.9.38 ImageMagick6-devel-6.9.9.38 --enablerepo=remi
--> 依存性解決を終了しました。 エラー: パッケージ: ImageMagick6-6.9.9.38-1.el7.remi.x86_64 (remi) 要求: libraqm.so.0()(64bit) エラー: パッケージ: ImageMagick6-libs-6.9.9.38-1.el7.remi.x86_64 (remi) 要求: libraqm.so.0()(64bit) エラー: パッケージ: ImageMagick6-devel-6.9.9.38-1.el7.remi.x86_64 (remi) 要求: openjpeg2-devel(x86-64) 問題を回避するために --skip-broken を用いることができます。 これらを試行できます: rpm -Va --nofiles --nodigest
解決してないので、1つずつ解決していく。
$ yum install https://rpmfind.net/linux/centos/7.4.1708/os/x86_64/Packages/libtool-ltdl-2.4.2-22.el7_3.x86_64.rpm
$ yum install http://springdale.math.ias.edu/data/puias/computational/7/x86_64//openjpeg2-devel-2.1.0-7.sdl7.x86_64.rpm
--> 依存性解決を終了しました。 エラー: パッケージ: openjpeg2-devel-2.1.0-7.sdl7.x86_64 (/openjpeg2-devel-2.1.0-7.sdl7.x86_64) 要求: libopenjp2.so.7()(64bit) エラー: パッケージ: openjpeg2-devel-2.1.0-7.sdl7.x86_64 (/openjpeg2-devel-2.1.0-7.sdl7.x86_64) 要求: openjpeg2(x86-64) = 2.1.0-7.sdl7 問題を回避するために --skip-broken を用いることができます。 これらを試行できます: rpm -Va --nofiles --nodigest
# yum install http://springdale.math.ias.edu/data/puias/computational/7/x86_64//openjpeg2-2.1.0-7.sdl7.x86_64.rpm # yum install http://springdale.math.ias.edu/data/puias/computational/7/x86_64/openjpeg2-devel-2.1.0-7.sdl7.x86_64.rpm
エラーなし
# yum install ImageMagick6-6.9.9.38 ImageMagick6-devel-6.9.9.38 --enablerepo=remi
エラー: パッケージ: ImageMagick6-6.9.9.38-1.el7.remi.x86_64 (remi) 要求: libraqm.so.0()(64bit) エラー: パッケージ: ImageMagick6-libs-6.9.9.38-1.el7.remi.x86_64 (remi) 要求: libraqm.so.0()(64bit) 問題を回避するために --skip-broken を用いることができます。 これらを試行できます: rpm -Va --nofiles --nodigest
1個減った。
libraqm-0.1.1-1.el7.x86_64.rpm CentOS 7 Download
# yum install http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/l/libraqm-0.1.1-1.el7.x86_64.rpm
エラーなし
# yum install ImageMagick6-6.9.9.38 ImageMagick6-devel-6.9.9.38 --enablerepo=remi
インストール: ImageMagick6.x86_64 0:6.9.9.38-1.el7.remi ImageMagick6-devel.x86_64 0:6.9.9.38-1.el7.remi 依存性関連をインストールしました: ImageMagick6-libs.x86_64 0:6.9.9.38-1.el7.remi LibRaw.x86_64 0:0.14.8-5.el7.20120830git98d925 OpenEXR-devel.x86_64 0:1.7.1-7.el7 bzip2-devel.x86_64 0:1.0.6-13.el7 freetype-devel.x86_64 0:2.4.11-15.el7 ghostscript-devel.x86_64 0:9.07-28.el7_4.2 gl-manpages.noarch 0:1.1-7.20130122.el7 ilmbase-devel.x86_64 0:1.0.3-7.el7 jasper-devel.x86_64 0:1.900.1-31.el7 jbigkit-devel.x86_64 0:2.0-11.el7 lcms2-devel.x86_64 0:2.6-3.el7 libICE-devel.x86_64 0:1.0.9-9.el7 libSM-devel.x86_64 0:1.2.2-2.el7 libX11-devel.x86_64 0:1.6.5-1.el7 libXau-devel.x86_64 0:1.0.8-2.1.el7 libXdamage-devel.x86_64 0:1.1.4-4.1.el7 libXext-devel.x86_64 0:1.3.3-3.el7 libXfixes-devel.x86_64 0:5.0.3-1.el7 libXt-devel.x86_64 0:1.1.5-3.el7 libXxf86vm-devel.x86_64 0:1.1.4-1.el7 libdrm-devel.x86_64 0:2.4.74-1.el7 libjpeg-turbo-devel.x86_64 0:1.2.90-5.el7 libtiff-devel.x86_64 0:4.0.3-27.el7_3 libwebp-devel.x86_64 0:0.3.0-7.el7 libxcb-devel.x86_64 0:1.12-1.el7 mesa-libGL-devel.x86_64 0:17.0.1-6.20170307.el7 mesa-libGLU.x86_64 0:9.0.0-4.el7 mesa-libGLU-devel.x86_64 0:9.0.0-4.el7 xorg-x11-proto-devel.noarch 0:7.7-20.el7 完了しました!
Done!
$ convert -version で動作確認
Version: ImageMagick 6.9.9-38 Q16 x86_64 2018-03-12 http://www.imagemagick.org Copyright: © 1999-2018 ImageMagick Studio LLC License: http://www.imagemagick.org/script/license.php Features: Cipher DPC Modules OpenMP Delegates (built-in): bzlib cairo djvu fftw fontconfig freetype gslib gvc jbig jng jp2 jpeg lcms ltdl lzma openexr pangocairo png ps raw rsvg tiff webp wmf x xml zlib
おしまい!
- 基本的には、エラーがでたらパッケージとOS名でググってひたすら入れていくだけ。
- 参考 qiita.com
ときさば流ギークハウスの作り方2018
2016年に書いてから2年たったので、また書いてみる。 hackerhouse.hatenablog.com
ギークハウスは基本的にはオープンソース的なものなので、やりたい人が好きにやればいいので、自分はどういう基準で作ってるかってことで。
前提
- 不動産業という面もあるけど、どちらかというとコミュニティ運営の色合いのほうが強いと思ってる
- なので、物件だけ用意してあとは放置していればいい…とかいうのを希望してるなら、ギークハウスにせず普通のシェアハウスにしたほうがいいと思う
- その場合は、ルールを厳し目にして自由度を減らして、たまに業者を入れればいい
目的
- なるべくいろんな価値観を持った人が集まれるように。ただし人に迷惑はかけない方向で。しかし他人の価値観も受け入れる方向であってほしい。
- 住居としての機能が基本だが、コミュニティとしての機能ももちたい
物件
- 広いリビングが必須。6畳とか8畳くらいのリビングはワンルームの部屋でも作れるけど12畳以上になると、ワンルームで借りるにはなかなか難しくなってくるので特別感がでてくるし、一人暮らしの狭い部屋のような閉塞感がないのでメリットに感じられる。
部屋
- 3LDK以上。基本はLDKにみんなが集まれるように前述のとおりの広めのリビング。
- 二部屋はドミトリー
- リビングに人を集めるため。個室だと、リビングに行く必要がないし、個室のみのシェアハウスでリビングに行くとかまって欲しい感じがしたりするので。ドミトリーしかなければ何かをするときは必然的にリビングにいくので、交流しやすい。
- 個室のギークハウスを作ると基本的にすぐ埋まるっぽいので商売的に考えるなら個室のほうがいいみたい。
- 楽しさならドミトリー。ドミトリーはいびきやら、生活時間のズレとか他人への気遣いとかでしばしば問題が起こる。個室はブラックボックスになりがちなので、問題があってもきづけないところが少し怖い。あと、個室は空きが出ると家賃に与えるダメージがでかいのもデメリットかな。
- 個人的にはリビングを二部屋以上できれば8人以上にするのがいい。5人以下の集団で、もめごとが起こると気まずい雰囲気が続くけど、8人いればどこかで揉め事起こっても他の人と交流できて修復できる。1:7になる場合は修復難しそうだけど、そこまで極端に割れるときは1になった人がかなり問題なので、仕方ないかなと。100%なんてどうやっても無理だし。
- 同じような理由で二人部屋よりは4人部屋のほうが揉めにくいと思ってる。
- ひと部屋はモクモク部屋。作業に集中したいときもあるからそのときはモクモク部屋にこもる。もくもく部屋は黙々と作業する部屋の意味。作業部屋。
- ドミトリーは2段ベッドでいいけど、下の段は足つきマットレス。上の段はロフトベッドみたいにして、一体型にしないほうが、上下の振動がそれぞれにつたわらないので居心地があがる
- カーテンはつけたほうがいい
上記のものを準備した上で部屋があまるなら個室作ってもいいと思う。4LDK以上の物件なので、都内にはそもそもあまり存在しない。
※ギークハウス新宿のドミトリー
駐車場
- 都内だとみんな自転車持ちたがるので自転車がおけるほうがいい。ただ、都内は自転車すらおけない物件が結構多い。
ご近所
- 基本的には住んでみないとわからない。23時以降は静かにするとかルール作っても、酒が入ったりすると制御難しいので寛容な人が近所だといいんだけど。前回住んでた人がご近所トラブルなかったか確認くらいするといいかも。
アクセス
- 駅から10分以内がいい。これより離れると遊びに行くのがダルい。
トイレ
- 2つ以上ほしい。
風呂
- 2つ以上欲しいけど日本はめったにそういう家がほとんど存在しない。
物件
- 高級物件はやめといたほうがいい。いろいろメンテに金かかるし、シェアハウスだとどうしても利用が下手な人が存在するので。
不動産屋
- 基本的にシェアハウスは嫌がられるので根気よく多数回るしかない
- ネットでもさがせるけどいい物件はネットにでないので結局自分で探すしかない
- DQN系不動産屋は嘘ついて借りることをよく勧めてくるが、奴らは仲介手数料さえとればあとはドロンなので無視したほうがいい
- 若い従業員が多いキラキラ系みたいなところは話聞くのもやめといたほうがいい。
- 賃貸だけ、仲介のみみたいなところはオススメしない。売買もやってるところはオーナーを直接知っているのでいい物件を持ってる率が高い印象
ルール
- あまり明文化したルールを作ると、ルール厨が発生して、住みづらくなるので、基本的には堅いルールは極力減らす方向で
- ルールに管理された生活はあまりしたくない。あと、ルールの抜け穴をうまく利用されてめんどくさいのもある。
※ギークハウス新宿のリビングの本棚
利益
- 基本的にはあまり儲からない
- あと管理人として自分が常駐できないならやらないほうがいいかも。
- 人任せの管理が難しい。自分が出入りする気がない場所は他人も出入りしたくないし。
家賃
- 周辺の相場よりちょい高い目くらいがいいと思ってる。
- 近所の6畳部屋のワンルームと同じくらいの価格がドミトリーで適切価格かなと。
- 共有スペースを広めにとるとそれくらいの価格にしないと赤字になる。
- あまり儲かるようならいろんな設備を充実させるといいかと。まぁ基本的には儲からないと思うけど。
近所付き合い
- してるところもあるけど、うちはしてない。やり方もよく分かってない。近隣ギークハウスとの付き合いはあったほうが楽しいので、遊びに行ったりするといい。近隣じゃなくてもつながってたほうが楽しいし。Facebookにグループがあるのでそこでつながったりしてる。
設備
- ガス乾燥機があると30分くらいで乾くのでいい感じ
- ガス栓は湯沸し器のところとかすでにガスがあるところに増設してもらうと工事費安い
- 乾燥機付き洗濯機とか、電気の乾燥機は感想までの時間が長すぎてオススメしない
共有アイテム
- 要望があって買ってもだいたいは一時的に使うだけでゴミになるので要望は話半分
- 誰かが自腹で買ってみんなが使えそうなら費用負担するくらいでいい
イベント
- のみくいでも、勉強会でも、旅行でも適当にやるといいと思う
- イベントやらないと中の雰囲気が外にわからないので住民が集まりにくいと思ってる
- オープンイベントをたくさんやってるとリア充だと揶揄されることがある。
- もくもく会、ゆるのみは簡単に開けて定期開催しやすいのでオススメ
とりあえず、ぱっと思いつくのはこれくらい。質問とかあれば適当に @tokisaba 宛とかにどうぞ。
事業拡大
- 複数軒やってるけど1軒を大きくしていくほうが基本的にはよさげ。
- 目が届かなくなるので誰得な状態になる気がする
- ルールを厳しくしないと管理人なしにはできないけどそれは楽しくない
# ペット - ペット物件になると敷金が1ヶ月増しとかになるのでシェアハウスみたいなでかい物件だと結構な金額になるけど - ペットはアレルギーの人がこれなくなるので、すさまじいメリットはあるけど、若干のデメリットがあると言える。 - 世話デキる人がいないとストレスためちゃうけど。
※ギークハウス新宿2のモカ様
ときさば系でSlackを導入した
FBのグループチャットでもbotが使えるようになるという噂を信じて1年待ったがだめなのでSlackを導入した。今までのパターンでいくと来月から始まる!みたいなのが起こりそうな気が微レ存。
Slack導入の目的としては以下のような感じ。
botを使っていい感じに住民にリマインドしたい
- ゴミの日
- イベント
- 来客
- 定期的なお知らせ
- 人に注意されるとイラっとするけどbotが言うとそれほどでもない
- 注意する方がストレスを感じるのでいい人がメンタルを消耗しないようにしたい
エンジニア系が多いのでSlackに慣れてほしい
- bot作ったり
- 使ってない現場に導入させたり
- 使ってる現場をさらに改善したり
多様な話題に対応
- 話が流れるのを避けたい
- スレッド利用ができる
交流を促進させる
- チャンネルふやせばときさば系内の他の家との交流が促進できる
- 家を横断した全体的な課題の共有と解決
やったこと
ルール
- 名前の最後に所属をいれる tokisaba@新宿1 的な
自動化
- google カレンダーと連携してスケジュールを伝える
やりたいこと
基本的にはまとめ兼ねてここにいろいろ追記していきたい。
git fatal: unable to access Peer reports incompatible or unsupported protocol version.
vagrant (centOS)を使っていたらgitコマンドが急に使えなくなりハマったので、またメモ
[vagrant@localhost vagrant]$ git clone https://github.com/hoge....
Cloning into 'hoge'...
fatal: unable to access 'https://github.com/hoge...': Peer reports incompatible or unsupported protocol version.
ぐぐってもそれっぽいエラーは出てこず、結局
$ yum update
$ yum upgrade
的にアップデートしてみたら治った。
error: failed to push some refs to 'https://...'
ハマったので記録だけ。
-------------
poge$ git push --set-upstream origin hoge/hage_hige
Counting objects: 270, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (138/138), done.
Writing objects: 100% (270/270), 127.36 KiB | 5.09 MiB/s, done.
Total 270 (delta 163), reused 197 (delta 108)
remote: Resolving deltas: 100% (163/163), completed with 55 local objects.
To https://github.com/Hogu/Hoga.git
! [remote rejected] hoge/hage_hige -> hoge/hage_hige (cannot lock ref 'refs/heads/hoge/hage_hige': 'refs/heads/hoge' exists; cannot create 'refs/heads/hoge/hage_hige')
error: failed to push some refs to 'https://github.com/Hogu/Hoga.git'
-------------
階層構造っぽいブランチ作ったときの、hogeの部分がかぶってたのが原因らしく、hoge2/hage_hige 的なものでブランチきってそっちにpushしたらいけた。
gitイマイチわかんない。