movee(モビー) オノデラのブログ

(株)movee代表。週末は自社サービスを作っています。

chromeの便利なショートカットキー

コードを書くスピードも大事だが、情報を素早く取得するスピードも大事だと思うのでchromeを快適に操作できることは大事。 よく使うショートカットキー 追加でタブを出す Ctrl+T タブの右移動 Ctrl+Tab アドレスバー選択 Ctrl+L

便利なiterm2コマンド

slackアプリの立ち上げ open -n /Applications/Slack.app googleブラウザのの立ち上げ open -a 'Google Chrome' 'https://google.com' いちいち打つのも面倒なのでコマンドのエイリアス設定をする vi .zshrc alias slack="open -n /Applications/Slack.app" …

RDSAurora(MySQL)を作成

上から順にすすめるだけ。 DBホストやDBユーザー名、DBパスワード名は自由に設定する。 追加設定項目の中にデータベース名を設定する箇所があるので、開いて設定する。 データベース作成は追加作成できなそう。

ed25519でSSH鍵を作成してGithubに登録

たぶんセキュリティ的にも強くて、速い鍵で鍵を作った。RSAよりも推奨度は高い。 参考:SSH は (RSA 鍵より) ED25519 鍵の方が強固で速い | らくがきちょう v3 $ssh-keygen -t ed25519 (色々聞かれるがエンター連打で良い) $ cd ~/.sshで鍵があるかを確認…

SCPコマンドでEC2にファイルアップロード/ダウンロードする

ローカルからEC2へのファイルアップロード/ダウンロードコマンドをメモしとく 年1回程度使うぐらい。 アップロード アップロードしたい場所まで移動しておく scp -i ~/.ssh/keyの場所/xxx.pem アップロードしたいファイル名 ec2-user@パブリックIP:アップロ…

Gitでcommitをきれいにまとめたいときのステップ

タイポなどコミットコメントを残したくないコミットの場合はコミットを1つにまとめたほうがコミットがきれいになる。 雑なステップ git log --oneline git rebase -i HEAD~2 消したい方をpick→ squashに変更して保存 消したいコミットメッセージを消去して保…

Dockerでexecutable file not found in $PATH: unknownエラーが出たのでその対応

OCI runtime create failed: container_linux.go:380: starting container process caused: exec: "worker.sh": executable file not found in $PATH: unknown ERROR: Encountered errors while bringing up the project. Dockerでdocker-compose upしたとき…

LaravelアプリケーションをECSで動かす自分的ベストプラクティス

【前提条件】 ・イメージは1つにしておく。 Dockerfileの作り方を学んでおく必要がある。2つだと登録できないので。そのため、phpコンテナの中にnginxを同居させなければいけない。 ・ ローカルで動かないイメージは本番でも動かない(当たり前) nginxの設…

nginxのrequestのさばき方について

参考:nginxがリクエストをどのように処理するか 日本語訳 nginx はどのようにリクエストを処理するか nginx.conf serverの基本的な設定 listenディレクティブ内のdefault_serverパラメータを使って、どのサーバがデフォルトかを明示的に設定することができ…

kintoneのデータ取得上限について

kintoneアプリからデータを取得する場合、デフォルトだとlimit 100が設定してあるため100件しか取得できない。明示的にクエリにlimit 500を記載すれば500件まで取得できる。500件が上限のため、offsetと組み合わせて500件ずつ取得して配列変数に詰める方法が…

linuxでプロセスを確認する

linuxでプロセスを確認するときはps auxが便利。psだけだとかなり広範囲のプロセスを拾ってしまうのでauxオプションを付ける。 auxは、「端末操作の」「CPUやメモリの使用率を付与した」「現在実行中の」プロセスを確認するオプション。 ・プロセス名で絞…

ECS execでコンテナにログインして調査する

2021年頃からECSコンテナにログインできるようになったのでログイン方法をメモする。権限付与やexecute-commandをtrueにする必要があるなど、ローカルでdockerコンテナにログインするより面倒だが、まぁ便利なのでメモする。 参考: ECS ExecでFargateにログ…

linuxで検索する

一括でファイル検索するときにいつもコマンドを忘れるのでメモしておく。 hogeというテキストを今のディレクトリ配下から検索するコマンド find ./ -type f | xargs grep hoge grep -r hoge ./* /etcディレクトリ配下の「.php」で終わる名前のファイルまたは…

ECSコンテナのエラー原因確認方法

nginxとphp-fpmのコンテナがSTOPPEDになるので原因を探りたい。ただし、コンパネでは必要な情報が足りないので、もうちょっと調査してみる。 その場合の調査方法。 STOPPEDのコンテナを探すためにステータスがSTOPPEDのコンテナをリスト化する。 aws ecs lis…

ECSでLaravelを動かす。でもその前にHTML

Laravel+MySQL+nginx+php-fpmで構築したアプリケーションをECSで動かしたいのだがよくわからないので、HTMLを動かすところから始めていく。 参考にした記事:ECRリポジトリにプッシュしたイメージをECS Fargateで起動する | DevelopersIO HTMLファイルをE…

aws ecr get-loginしてpushするとEOFになる

aws ecrでloginが成功したのにimageをpushしてもEOFになる場合があったのでメモ。これは単純に違うアカウント、ユーザーとしてpushしているから。push先のアカウントが異なる場合に発生する可能性があると思われる。 aws ecr get-login-password --region ap…

特定のS3オブジェクト編集権限のあるユーザーをIAMで作る

S3+CloudFrontで静的サイトを公開しているパターンがある。 S3へのファイル更新をデザイナーが担当するときはそのS3オブジェクトだけ編集できて、他のサービスにはアクセスできないようにしたい。 IAMユーザーを作成してS3オブジェクトのみ編集できるカスタ…

IAMを調べて自分のAWSアカウント運用を変更した

個人契約のAWSのアカウント管理がとても適当すぎてセキュリティリスクがあるのでとりあえずIAMユーザーを作ってそこにIAMポリシーを当てて操作するように変更する。 SSOを使えばもっと良いのだろうと思いつつ、そこまでしなくても感もあるので、取り急ぎ古の…

Docker cacheを削除する

新しいDocker構成で環境を作ろうとしたときに前に作っていた構成のcacheが残っていて、ちゃんと反映されないことがある。 docker system df //Docker容量確認 docker builder prune //Docker cache削除 docker system df //Docker容量確認 これでBuild Cache…

CloudFormationと5つのsection(Parameters、Resouces、Mappings、Conditions、Outputs)

CloudFormationの理解が弱いのでまとめてみる。 CloudFormationはJSON型式か、YAML型式で記述されたテンプレートをもとにスタック(AWSリソースの集合体)を自動構築する。JSONやYAMLファイルを作成してコンパネからファイルをアップロードして読み込んで使…

twigにはまった

EC-CUBE(symfony)はテンプレートエンジンのtwigを使っているが、OctoberCMSもtwigファイルになる。kintoneに格納されているURLを取得して表示する場合はサニタイズする必要があるがはまった。やなどごにょごにょやっていたが、twigなのだからエスケープ処…

DynamoDBについてまとめ

いわゆるkey,value型のマネージドデータストアサービス。NoSQLデータベース。 データが3つのAZに分散されており、耐久性が高い。またデータ上限がない。 cacheやsessionの保存などに利用される。 AWSコンパネでポチポチしてテーブルを作れるが今回はcloud sh…

git stashについて

localでdevelop branchからlocal branchをきって開発してるときにだれかがorigin developにmergeした場合どうするとよいかメモする。 自分のlocal branchからlocal developにswitchしてgit pull origin developしたいが、local branchの改修がcommitされてな…

S3で簡易な静的ホスティングをする

htmlやcssなどの静的サイトの場合はインスタンスを使うことなく、S3とcloudfrontだけで構築できる。 実質S3のみでサイトのopenはできるが、httpsがたしかできなかったのでcloudfrontも使う必要がある。 cloudfrontのURLのみ access可にするためS3URLは acces…

OctoberCMSのroutingについて

OctoberCMSでroutingを行う場合はpublic function registerComponents()で以下のように書けばhtm側にtest1と書けばxxx\xxx\Components\Test1.phpのonRun()methodが走るようになる。 plugin.php class Plugin extends PluginBase { public function registerC…

buildファイルだけpushで開発ストップしてる

baseファイルとbuildされたファイルがある。なぜかorigin staging branchをpullしたソースに対して、npm run buildをrunすると差分が生まれる。これは自分が触ったソースではないのでどのような形でpushされているのか分からない。 が以下のようなことだと思…

Lambdaの定期バッチでEC2のコストを削減する

Staging環境はエンジニアが開発している時間帯のみ稼働していれば良い。9:00〜21:00ぐらいまで稼働していれば十分で深夜帯は停止していても問題ないはず。Instanceは従量課金なので不要な時は稼働させないのがコスト的にうれしい。 とはいえ、engineerが毎日…

install pluginのベストプラクティスは

githubで開発をするメリットはソース履歴を見れることだったり、staging・productionのソース差分をbranchベースで比較できることなのだが、例えばcommandでinstallするpluginの場合のベストプラクティスは何だろうか。 local環境でdocker exec -it php_1 ba…

OctoberCMSのplugin

OctoberCMSのpluginをinstallするときはphp artisan plugin:install AuthorName.PluginNameのように作者名.プラグイン名でinstallする。 OctoberCMSの1系からバージョンアップしようとしているが、Incompatible version. Please update to a newer version o…

developブランチとmainブランチのcommit差分解消について

複数メンバーで開発をしてるとconflictが起きたり、mergeしたくない他のbranchの変更souceがpull requestに含まれてしまったり。programの変更以上にconflict解消やpull requestの修正に時間がかかって工数が上がるとつらくなる。 Commitされてるけどpull re…