メインコンテンツへスキップ

Posts

2023

GitLab CI で artifacts:reports:dotenv を使って Job をまたいで変数を渡す
gltlab GitLab CI
GitLab CI である Job で変数を定義して、それを後続の Job でも使いたいなと思って調べていたら artifacts:reports:dotenv にたどり着いたのでメモ。 以下、使用例 stages: - stage1 - stage2 - stage3 - stage4 job1: stage: stage1 script: - echo "MY_VAR1=first-variable" >> dot.env artifacts: expire_in: 30 mins
Orbstack を Docker Desktop の代わりに使う
Docker orbstack
きっかけ # brew update して新しく追加された formula を眺めるのが最近のちょっとした楽しみ — yteraoka (@yteraoka) January 12, 2023 で、 orbstack っていう formula が追加されてるのを見てほー、そんなものが、ということで試して
Datadog Agent からの Metrics を Victoria Metrics で受ける
VictoriaMetrics Datadog
Victoria Metrics は v1.67.0 で Datadog Agent からのメトリクスを受け取れるようになっているので今回はこれを試してみる。 Victoria Metrics のドキュメント How to send data from DataDog agent Single node Instance をセットアップ # Victoria Metrics はクラスタリング
Devbox を使った開発環境
devbox Ruby Python PostgreSQL
ローカル環境を汚さずDockerコンテナのオーバーヘッドもなく、開発環境を自在に構築できる「Devbox 0.2.0」登場 - Publickey この記事を最初に見たときは「えーそん
LINE に送ったメッセージを Google Home に読み上げさせる
GCP AWS go LINE Raspberry Pi
令和の時代、家に固定電話はなく、外出先から家族に直ぐに答えて欲しいことがあってもスマホはマナーモードで手元に置いてなければ気づくことができません。 そんなわけで、
Caddy の Internal TLS 証明書の有効期間を指定する
TLS caddy
以前 ワンライナーで https の Reverse Proxy を実行する という記事で Caddy を使うと local での開発用に任意のドメインの証明書を簡単に発行できるし CA の証明書も OS の証明書ストアに保存してくれるた
xmllint で HTML 内の任意の値を取り出す
shell HTML
サクッと shell script で HTML の中の何かを取り出したい時があります。 そんな時に使えるのが xmllint. しっかりやるなら python の Beautiful Soup を使ったりしますが、本当に簡単なことを簡単にやりたい場合に xmllint

2022

Lima の vmType VZ と virtiofs を試す
Docker macOS lima
Lima が version 0.14.0 で QEMU だけではなく macOS の Virtualization.Framework に対応していました。 vmtype という設定項目が増えています。 この新しい Framework では Host のディレクトリをマウントするのに virtiofs が使えるようになっており、
rbspy で ruby の stacktrace を flamegraph にする
Ruby
中身をよく知らない Rails アプリでどこが遅いのかな?と思って rbspy ( github) を試してみたのでメモ。 とりあえず使って flamegraph を書き出してみたんだけどそもそも flamegraph がどういうものなのか分かっ
go.mod の更新
go
たまに使い捨ての code を書いて放置する程度だと毎回ググってしまうのでメモ。 go.mod の更新は go get や go mod tidy で行うことができる。 go の version を更新 # go.mod 内の go の version は次のようにして go mod tidy
lego で既存の秘密鍵を使って証明書を発行する
Certificate lego
既存の秘密鍵を使って証明書を発行しなければいけないという特殊な環境ですぐに証明書を発行したいということがありました。 lego を使っての証明書発行はとても簡単ですが、デ
RPM の install, uninstall 時に実行される script の確認
Linux
ある RPM Package のインストール、アンインストール時にどんな処理が行われているのか確認したいことがある そんな時な rpm コマンドの --scripts オプションを使用する rpm -qp --scripts ./some.rpm
/etc/hosts で wildcard や CNAME 対応させたい
DNS macOS
macOS での話です。(macOS Ventura でも機能することを確認しました) /etc/hosts で 203.0.113.2 *.example.com みたいに wildcard に対応させたいことが稀にあります。 また、AWS の Application Load Balancer のように IP アドレスの固定され
Gitlab Ci で Kaniko build し Trivy で scan する
gitlab GitLab CI Kaniko Trivy
GitLab CI でコンテナイメージを Docker daemon の不要な Kaniko で build し、それを Trivy でスキャンする方法 まず、kaniko で --tarPath を指定して tar ファイルで書き出す 書き出す先を artifacts で指定したディレクトリ
Anthos Service Mesh の Outbound Access Log を出力する
Istio GCP Anthos
Anthos Service Mesh のアクセスログはデフォルトでは Service への Inbound しか出力されません。 エラーが発生した場合は Outbound のログも出力されます。 出力先は Cloud Logging で HTTP の情報は Load Balancer などと同様に httpRequest という Object
Kubernetes で StatefulSet の Volume を resize する
Kubernetes
Kubernetes で StatefulSet に volumeClaimTemplates を指定して Persistent Volume を使用している環境で volume のサイズを変更する方法。 素直に StatefulSet の manifest を変更して apply しようとすると次のように StatefulSet で更新可能なのは replicas, template, updateStragety だけだよとエラーに
DNS over HTTPS 通信の中身を確認する
DNS DOH Python
iPhone の HTTP(S) 通信を OWASP ZAP で覗いてみたたら 8.8.8.8, 8.8.4.4 に対して DNS over HTTPS の通信を見つけたのでどんなやり取りをしているのか確認してみた。 DNS over HTTPS でのリクエスト # リクエストは HTTP の GET メソッド
apt-key is deprecated への対応
Debian Linux
Debian 系の Linux で古いインストール手順なんかを見てコマンドをコピペしていると出くわすこのメッセージ Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)). package 署名の公開鍵の管理方法が変わったみたいです リ
iPhone の通信を覗く
tcpdump iPhone
先日 iPhone のアプリが https で通信している内容を覗いてみようと HTTP プロキシに OWSAP ZAP を指定して覗いてみました。 OWASP ZAP が動的に証明書を発行してくれるので、その発行元となる CA を iPhone に登
Graceful Node Shutdown で Terminated 状態で残る Pod を削除する cronjob
Kubernetes
GKE (GKE 限定な話ではないけれども) で Preemptible な node を使用していると Graceful Node Shutdown により停止させられた Pod が Failed 状態でどんどん溜まっていって結構邪魔です。 できれば消えて欲しい。 ということ