最近、Dockerfileを書く機会が多いのですが、ADDとCOPY、CMDとENTRYPOINTの違いを自分の中でも曖昧な状態で放置していたので、この機会にまとめておきたいと思います。 ADDとCOPYの違い 結論から言うと、以下の違いがあります。 ADD COPY リモートからのファイル追加 できる できない 圧縮ファイルの自動解凍 される されない ここで言うリモートからのファイル追加という […]
AWSのCodeシリーズでCI/CDを構築する際に、異なるアカウントのS3からファイルをコピーしたいという要件があり、少しハマったのでその解決方法をメモ。 やり方は3つある “s3 クロスアカウント”などで検索すると、AWS公式のサイトがヒットして、やり方が書いてあります。 https://aws.amazon.com/jp/premiumsupport/knowledge […]
現状Windows Serverで動いているC#のアプリケーションをコンテナ化したいという要望があり、その際Windowsコンテナについて少し調べたのでメモ。Windows系の知識が全然ないので、認識が誤っていたらコメントいただけるとありがたいです。 前提 C#を実行するフレームワークによって、以下のようにOSの制約があります。 .NET Framework:Windows上でしか動かない→Win […]
Apache httpdとTomcatの2プロセスを1コンテナで立ち上げる必要があり、その時にSupervisorを使用したので使い方をメモ。 前提 コンテナでアプリケーションを構築する際、1コンテナ1プロセスにするべきというのが一般論で、そうすることによって以下の点でメリットがあります。 プロセスが落ちるとコンテナも落ちるのでゾンビプロセスが生まれない stdout / stderrのログをコン […]
AWS IoT Coreを使ってみたのですが、ネットで情報を漁っていると意外と古い&ざっくりした情報が多く、トピックごとの権限を設定するのに少し詰まったので、備忘録として残しておきます。 AWS IoT Coreのリソース作成 まずはAWSのマネジメントコンソール上で、IoT Coreの設定を行っていきます。以下のサイトで詳しく書いてあったので、参考にしました。「AWS IoTにモノを登録 […]
EKSを導入することになったので、コンテナの復習としてECSの使い方をメモ。80番ポートにアクセスすると文字列を返却する超簡単なexpressのイメージを作成しているので、今回はそれを使う。 イメージをローカルで動作確認 以下コマンドで、コンテナが立ち上がる。ブラウザでlocalhostにアクセスすると、「Hello World」と表示される。–nameの箇所は任意。 確認できたら、以 […]
タイトルの通り。作成してみたので、ブログに残しておきます。前提として、CodeBuildやCodePiplelineのIAMロール(S3へのアクセス権限の付与)などはされていること、CodeBuild上でartifactを生成するbuildspec.ymlは作成されているものとします。これらの情報は、検索すればたくさん出てくるはず。
これまでも使ったことあったけど、設定の仕方とか忘れていたので改めてメモ。 connected-react-routerとは? reduxのstoreでrouterを管理するためのライブラリ。それで何が嬉しいかというと、例えばsagaで以下のようにページ遷移できる。 公式のリポジトリにあるように、現状はReact Routerのv4とv5をサポートしているようです。 設定方法 store.ts re […]
モジュールのインストール .envファイルを作成し、環境変数を設定 以下をserverless.ymlに追記 以下のような形式でjsファイルから値を取得できる
要約 基本、認証に使用するIDトークン(JWT)にユーザ情報が含まれているので、それをbase64デコードしてやればOK。ただし、クライアントに見せたくない(=JWTに含めたくない)属性の場合は、少し工夫が必要という話。 内容 JWTから取得する場合 以下、LambdaをNode.jsで書いた場合の参考 以下のパラメータが得られる。(値は全て書き替えてます。)custom:testというのは、手動 […]