y-ohgi's blog

TODO: ここになにかかく

GitHub Actionsでactions/setup-nodeのみでcacheを行う

TL;DR GitHub Actionsでnodeのキャッシュを行う actions/cache を使用せずに actions/setup-node のみで完結させる 概要 なんとなく actions/setup-node にnode v22が気てないか気になって見てみたらcache機構が備わっていたので試したら動いた次第 Version …

Firebase Realtime Databaseの更新をCloud Functionsで検知する

TL;DR FirebaseのRealtime DatabaseのイベントをCloud Functions for Firebaseでキャッチする Realtime Databaseの特定のパスのデータの変更内容を検知する About Firebase Realtime Database(以下DB)内で発火されたイベントを取得し、変更内容を確認したい…

kustomizeで管理するGKE-autopilot

TL;DR GKEのmanifestをkustomizeで管理する際のサンプルです 例としてdevとprod環境を分けてプロビジョニングします 概要 kustomizeとは kustomizeとはKubernetesのマニフェスト(yamlベースのIaC)を管理するために使用されるツールです。 素のmanifestファ…

GKE-autopilotへhelmでdatadog-agentを導入

TL;DR GKE-autopilot環境下へhelmでdatadog-agentをインストールする 概要 helmを利用してdatadog-agentの導入を行います Versions GKE-autopilot 1.27.3-gke.100 helm v3.13.0 datadog(helm) 3.39.1 2023/10/10時点のlatestです。理由は後述します。 3.34.3…

技術ブログを7月の土日に書き続けた感想

なぜやったのか はじめに、私は7月の土日はブログを書いてみました。 きっかけとしてはクラスメソッドさん主催の「Developers io 2023」というオフラインカンファレンスに感化されたことになります。 event.classmethod.jp 7月は技術ブログを書こうとなんと…

OrbStackを利用する

TL;DR 軽量なコンテナクライアント Docker for Desktopの代替として使用可能 docker コマンドをそのまま使用することが可能 概要 Docker for Desktopの代替として使用可能な非常に軽量なコンテナクライアントです。 参考にOrbStackの公式のベンチマークが以…

個人開発をノリと勢いだけでやると楽しいよってお話

TL;DR オンラインゲームのギルドで需要があったのでノリで個人開発をしました どんなものを作ったかというより、どのようなノリで作ったかのお話です とりあえず個人開発をノリで作ると楽しいから作ろう! 概要 作ったものは単純に名前を入力して順番を決定…

CloudRun上でFinchで作成したcontainerdのコンテナイメージを動かしたかった

TL;DR Finchでbuild/pushしたコンテナイメージをCloudRunで使いたかった FinchでGCPのArtifact RegistryへログインできずにDockerでpushする結果に。 概要 Finchで作成したコンテナイメージをCloud bRun Versions finch v0.6.2 nestjs/nest v9.8.0 node v20.…

Finchでdocker-composeを動かす

TL;DR AWSがOSSとして公開したコンテナクライアントFinchでdocker-composeを立ち上げ Docker for Macの代替として、dockerのsocketを扱う以外のユースケースでは十分利用可能 Versions finch v0.6.2 概要 Finchとは2022年にAWSが公開したコンテナクライアン…

EC2 Instance ConnectでEC2内へ接続を行う

TL;DR EC2 Instance ConnectでEC2内へ接続 概要 EC2内に接続する機能としてEC2 Instance Connectがあります。 その機能を使用してEC2へssh接続を行います。 流れ EC2の作成 特に何かを設定すること無くインスタンスを起動します。 Amazon Linuxの場合、最初…

AWS認定試験オフライン体験記

TL;DR オフライン試験に参加してきた体験記です 受けた試験はCloud Practitioner(CLF)です。 5年前に同じ会場で受けたときと試験体験が向上しており感動してブログを執筆しました 概要 主に試験内容ではなくオフライン試験体験(UX)をメインに書きます。 …

DevelopersIO 2023 Day1 備忘録

概要 クラスメソッドさん主催の技術カンファレンスのDay1で参加させていただいたセッションの備忘録となっています。 初めて勉強会の備忘録をブログに投稿してみました。ブログの最後に参加した所感を記載しています。 DevelopersIO 2023 〜GETだけじゃもっ…

Limaを利用しQEMU上でコンテナを動かす

TL;DR Dockerの代替としてLimaを使用して、コンテナを起動する Limaでcontainerdを動かす 概要 LimaはVMとしてQEMUを使用し、その上でcontainerdを起動することを目的としたOSSです。 Lima: Linux virtual machines 去年の9月時点でCNCFのsandboxのレベルにj…

Lambdaから直接httpsエンドポイントを生やす

TL;DR Lambdaからhttpsエンドポイントを生やしてcurlを叩く CDKでIaC化する 概要 去年の4月のアップデートでAPI Gatewayを挟まずに、Lambdaから直接httpsエンドポイントを生やすことができるようリリースがありました。 AWS Lambda 関数 URL: Lambda 関数用…

Cloud RunサイドカーでDataDog APMを利用する

TL;DR Cloud Runでサイドカー機能が23/05/16にプレビューが発表されました サイドカーコンテナとしてdatpadog agentを並走させ、APMのトレースを取得を試しました About Cloud Runにサイドカーがプレビューとしてリリースされました。 モニタリングやプロキ…

Spring Boot(Kotlin)のプロジェクトを作成する

TL;DR Spring Initializr でSpring Boot のプロジェクトを作成 IntelliJ の設定でJDK を指定を行わないとDebug Run が実行できなかった 概要 Spring Boot の立ち上げをしたことがなかったため試すことが目的です。 Spring Initializrでプロジェクトの作成 以…

GCS をローカルのdocker-composeでエミュレートする

TL;DR fsouza/fake-gcs-server を使用し、ローカルでGCS をエミュレートする docker-compose 上で他のサービスと協調して動作させる golang で実装されているため動作が速い 概要 クラウド選定時にGCP を使用する際、GCS が必要なサービスでした。 そのため…

Rust 製のnode マネージャー "volta"

TL;DR JavaScript (node)のランタイムマネージャーvolta ローカルのnode のバージョン管理をする 概要 いままでDocker で全てのランタイムをどうにかしてきたものの、ついにMBP に特定のランタイム(node)を入れないと仕事に支障がある状況に。 仕事なの…

ECR からDocker Hub のオフィシャルイメージを使用する

TL;DR 今年のre:Invent で発表されたECR の機能 Docker Hub のオフィシャルイメージをECR 経由でPull できるようになる Cloud Build のIP 制限が回避できる About ECR からDocker Hub のイメージをpull できるようになりました。 Docker Official Images now…

App Runner でRemix を動かす

TL;DR js のSSR フレームワーク、Remix をApp Runner で動かす About AWS Containers Advent Calendar 2021のカレンダー の2日目の記事になります。 最近App Runner を使い始めたので、新しいフレームワークのRemix をApp Runner で試してみようというモチベ…

Next.js middleware でBasic 認証を試す

TL;DR Next.js 12 でリリースされたmiddleware を試す middleware でBasic 認証をかけてみる About Next.js 12でリリースされたmiddleware でBaisc 認証を試した備忘録。 コードは 公式のexample にのっているものを使用。 何もつまづきなくBasic 認証をかけ…

Terraform のディレクトリ設計案

TL;DR Terraform のディレクトリ設計の個人の意見です。 マサカリはむしろください。より良い構成のために。 Terraform でVPC EC2 を作る例を元にディレクトリ設計の案を出します。 About Terraform のディレクトリ設計が溢れているので、俺の考えた最強のデ…

skaffold をGKE-autopilot で開発環境として利用する

TL;DR GKE-autopilot でskaffold を使う skaffold のホットリロードを試す 概要 GKE-autopilot で開発環境としてskaffold を使い、開発効率化をする versions macOS 11.5.2 GKE-autopilot v1.20.8-gke skaffold v1.30.0 skaffold を実行する CLI のインスト…

GKE-autopilot でTelepresence を実行する

TL;DR GKE-autopilot でTelepresence を実行可能か確認し、実際に動いた 概要 GKE-autopilot でTelepresence を実行するだけのブログ version macOS 11.5.2 Telepresence 2.4.0 GKE-autopilot v1.18.20-gke Telepresence を実行する GKE-autopilot は構築済…

kubectl のプラグインマネージャーkrew を使用する

TL;DR krew はkubectl のSIG-CLI でメンテナンスされているプラグインマネージャー krew で tree プラグインを使用してみた krew のWeb サイト上で プラグイン一覧 がGitHub スターと一緒に閲覧できるのが良い 使ってみる Version kubectl v1.21.2 krew 0.4.…

GKE-autopilot とCloud SQL を使用したGCP 環境を構築する

TL;DR GKE-autopilot で環境構築をする例 一般的なAPI サーバーを構築することを目指し、GKE-autopilot、GCP のマネージド証明書を使ったhttps 化、Cloud SQL との疎通をさせる kustomize で複数環境の構築 About GCP リソース/API は基本的に手作業でやりつ…

vite x React x TypeScript でgithub pages にデプロイする

TL;DR 話題のvite を使ってReact x TypeScript のSPA を作るサンプル GitHub Pages へGitHub Actions でCD も行う vite、とても良い 概要 vite を最近良く見るので、使ってみたなど。 構築 version node 16.6.1 npm 7.20.3 vite 2.4.4 Repository https://gi…

Next.js / TypeScript のプロジェクトStorybook を導入する

TL;DR Storybook はUI コンポーネント単位でプレビューできるツール Storybook をNext.js / TypeScript (/ material-ui / docker-compose) のプロジェクトに導入をする 概要 version TypeScript 4.0 Next.js 10.1.3 Storybook 6.2 Story Book Storybook: UI …

エンジニアがスタートアップを立ち上げたときの法人手続き等のメモ

TL;DR つくりたいCtoC サービスがあり、法人口座がほしかったので登記した。 想定外に法人系のタスクが多く、一応一通り法人の体裁が整ったのでそのメモ 顧問税理士・弁護士・法人口座・法人カードに疲弊した 概要 CtoC のサービスを作っていて、スタートア…

5日間のワーケーション in 沖縄

TL;DR 緊急事態宣言が明け、思いたったので沖縄へワーケーションしに行った5日間の記録 Mobile Wi-Fi が無いと死んでいた 沖縄は海が綺麗だった。人はいなかった。 初日 pic.twitter.com/UQS32MdKUY— y-ohgi (@_y_ohgi) 2021年3月22日 14時に思いついて23時…