RubyでRTX1300へSSH接続して設定ファイルを表示する

RubyからRTX1300へSSH接続して設定ファイルを表示するための備忘録です。 本来はnet-sshのみで実装する予定だったんですが、RTX1300のSSHサーバがRFC4254のSec 6.5にあるexecを実装していないようで、 open_channelを使って書く必要がありました。 既に似た…

自宅でv6プラス固定IPサービスを使っている話を会社でしてきた

会社で自宅のネット環境について話したので、こちらでもリンクだけ貼っておきます。 docs.google.com 端的に言えば、「v6プラス」固定IPサービス」を自宅では利用して、v6プラスで問題になりやすいNAT周りを回避しているっていう話をしてきました。 5分程度…

macOSの1Password起動時に「You’ve used a newer version of 1Password on this device.」が出る

エラーのスクショを撮るの忘れていたんですが、macOSで1Password起動時にYou’ve used a newer version of 1Password on this device.というエラーが出る場合があります。 1password.community ここを見るとベータ版を利用していた後に、安定版をインストール…

GitHub OrganizationのプロフィールページにREADME.mdを設定する

最近知ったんですが、GitHubのOrganizationのプロフィールページにはREADME.mdを設定することができます。 例えばMicrosoftのOrganizationには、OpenSource Projectへの参加方法についてのリンクが主に記載されています。 github.com 公式ドキュメントは、こ…

Multi-stage buildsを使って環境別のコンテナイメージを作成する

n番煎じですが、Multi-stage buildsを使って環境別のコンテナイメージを作成する一例になります。 環境別にパッケージや挙動・設定が異なるのは望ましくないですが、 こういう書き方をする場合もあるということが誰かの参考になれば幸いです。 今回は、環境…

Hugoのextendedバージョンがaqua経由でダウンロードできるようになりました

suzuki-shunsukeさんにほんとど書いてもらったんですが、Hugoのextendedバージョンのバイナリがaquaでインストールできるようになりました。 github.com github.com Hugoのextendedバージョンは利用するテーマによっては必須と言ってもよいものです。 これを…

RTX1300にVPNに接続する

今回は、RTX1300のセットアップの続きでVPNを接続した時のメモになります。 大まかな流れ 大まかな流れですが、 Web GUIのかんたん設定でVPNの接続設定を行う 足りない設定を手動で入力して補完する といった流れになります。 弊宅ではV6プラス固定IPで外部…

RTX1300のメトリクスをPrometheus+Grafanaで可視化する

V6プラス固定IPに変更したタイミングでRTX1300を自宅に導入しました。 簡単にいくつかのメトリクスをPrometheus+Grafanaで可視化しました。 大まかな手順とサンプルコードについては、砂場レポに放り込んであるのでこちらを参考にしてください。 github.com …

自宅の回線をV6プラス固定IPに変更した

表題の通り、自宅の回線をDMM光のV6プラスから、enひかりのV6プラス固定IPに変更しました。 V6プラス固定IPに変更したんだけど、この時間帯でこれなら問題なし / enひかり IPv6接続 IPoE(v6プラス)の測定結果Ping値: 5.7ms下り速度: 447.85Mbps(非常に速い)…

GitHub Actionsで特定のコマンドをリトライするだけのAction

仕事でも利用している個人で作った特定のコマンドをリトライするだけのGitHub Actionを公開しました。 似たようなActionは既にMarketplaceにあるのですが、大体がそのコマンドの出力結果を取得できないため、自前でActionを書くにいたりました。 github.com …

ReactとGoで作るWebアプリの自分向けテンプレート

ReactとGoを使ってWebアプリを書くことが少しだけ増えたんですが、自分向けのメモ程度に作ったテンプレートを公開しておきます。 sandboxというリポジトリに気になったことを実験して放り込んでいます。 今回も特に頻繁に使うものでもないし、メンテする予定…

NotionのDBにページを自動作成するスクリプトを供養する

NotionのDBにページを自動作成するスクリプトをGitHub Actionsで組んでいましたが、使わなくなったのでここに供養します。 今回供養するスクリプトの概要としては、「毎日、日報を書くページを作る」ようなスクリプトです。 スクリプトの大まかな流れとして…

Mermaidで図を書く時に個人的に気をつけていること

先日、GitHubでもMermaidに対応をしたことが発表されました。 github.blog 今回は、GitHubや他サービスでMermaidを書く時に個人的に気をつけていることを書いておきます。 ここに書いてあることは、PlantUMLで書いているときにも気をつけているポイントにな…

コンテナにファイルをコピーせずスクリプトを実行する

たぶん役に立たない豆知識です。 ssh接続したリモートホストにファイルをコピーせずにシェルスクリプトを実行する方法を知っている方も多いと思います。 ssh $HOSTNAME bash -s <./main.sh リモートホストで起動したbashに、ローカルホストのmain.shの内容が…

Gitのpre-push hookスクリプトをRubyで書き直した

Git操作時に、事故が起きないように書いていたpre-push用のスクリプトをbashからRubyに書き換えました。 このスクリプトは、 mainやmasterブランチに意図せずpushしてしまう 意図せずforce系のオプションを付けてpushしてしまう といった事故を防ぐために設…

AWS CDKでCloudFormation StackSetsで展開するIAM Roleを作る

AWS Organizationsで管理している組織に展開するCloudFormation StackSetsのテンプレートを生成するCDKのコードを載せておきます。 今回は例なので、AdministratorAccessというかなり強い権限がついているので、実際には別のマネージドポリシーや自前のポリ…

GSuite BasicからGoogle Workspace Business Starterに切り替える

Googleから催促のメールがきていたので切り替えました。 その時のメモになります。 流れ 公式ドキュメントを参考にしながら、以下の流れで対応しました。 プラン変更時の差分を確認 組織の設定変更 プランの変更 support.google.com プラン変更時の差分を確…

ForegroundでCronを実行した時に処理の標準出力,標準エラー出力をCronの標準出力,標準エラー出力にリダイレクトする

ForegroundでCronを実行した時にCronで実行される各処理の標準出力,標準エラー出力に出力した内容は、 Cronの標準出力,標準エラー出力に出力されずにいずこかへ消えます。 今回は、各処理Cronの標準出力,標準エラー出力にリダイレクトして出力させます。 先…

Remote - WSL拡張を使ったVSCodeで新規ファイルをcodeコマンドから開けない

この問題で無駄に時間を消費してしまったんですが、Remote - WSL拡張を使ったVSCodeで新規ファイルをcodeコマンドから開けない現象に遭遇しました。 WindowsのRemtoe WSLで新規ファイルが「code file」でファイルが開かない問題あったけど、User Installerを…

nっぽいkustomizeバージョン管理ツールを書いた

Node.jsのバージョン管理ツールであるnっぽい、Kustomizeバージョン管理ツールを書いてみました。 github.com 元々kustomizeをインストールするためのサポートスクリプトがあって、これは指定したバージョンをインストールすることも可能なんだけど、複数バ…

GitHub OrganizationでSSO認証必須にすると少し困ること

GitHub OrganizationでSSO認証を必須にすると、困るケースが出てきたので軽くまとめておきます。 困るケースは以前ツイートした以下の内容になりますが、かなり限定的なケースだと思います。 SSO認証必須になっている組織の公開レポに対して、所属しているア…

systemdでサービスの有効化と起動をワンラインで実行する

昨日VPNサーバを構築した際に知ったのですが、比較的新しいバージョンであれば有効化と起動をワンラインでできるようです. man.kusakata.com 例えばnginxサービスをsystemdで有効化と起動をすると言えば、 systemctl enable nginx systemctl start nginx と…

WireGuardをConoHa VPSで立ち上げてGunfire Rebornをプレイする

Gunfire Rebornというゲームを友人とプレイしようとしていたところ、 特定のフレンドとプレイができなくなるという現象が起きました. この現象は、弊宅で契約している回線がV6プラスであることが起因していて基本的には解決できない問題です. とはいえ、回避…

Kindleアプリで既読にならない

私はiPadのKindleアプリで書籍を読んでいることが多いんですが、確実に最後まで読み切っているのにも関わらず既読の棚に移動しないという現象に1週間ほど悩まされていました. 結論としては、アプリの不具合でも何でもなくてiPadを再起動すれば解決するだけの…

MkDocsでmainブランチを利用する

昨今、技術界隈でもポリコレが重要視されている気がする世の中です. GitHubのデフォルトブランチがmainブランチに変更されていますが、MkDocsではmasterブランチがデフォルトのままです. この場合、生成されたHTMLの編集リンクはmasterブランチが参照される…

2021年買ってよかったもの

2021年に買ってよかったものを書いておきます。 オカムラ - Contessa Ⅱ(コンテッサ セコンダ) メリット デメリット PFU - HHKB Professional HYBRID Type-S メリット デメリット 日立 - 洗濯乾燥機 ビッグドラム BD-SX110FL メリット デメリット サンワサ…

Hugo向けのDockerfile最新版

個人サイトの www.khasegawa.net からブログをはてなブログに切り出したことで、テーマも変更しました. それに伴いコンテナイメージを作り直したので、その時のDockerfileを書いておきます. ちなみに最近のHugoのテーマでは、Sass/SCSSのコンパイルが必要に…

個人ブログをはてなブログに移行しました

ほぼ毎年ブログを変えてるような気がしますが、今回は落ち着くことになりそうです. 以前、個人ブログを変更した時の話はこれ khasegawa.hatenablog.com Hugoを使っていて不便に感じたこと 元々Hugoを使ってブログの記事内容を含めてwww.khasegawa.netを管理…

NewRelicの新料金プランについてまとめる

昨年の夏頃にNewRelicでは新料金プランを打ち出していました. newrelic.com この頃は私が関わっているところでは、料金プランの変更が次回更新時だったため詳細について見るのを後回しにしていました. そしてそろそろ更新タイミングに差し掛かるため、新料金…

CloudWatchアラーム一覧を表示する

どのリージョンにどんなCloudWatch Alarmがあるのかを知りたかったので、Bashスクリプトを書きました. 利用するツールは、jqとAWS CLIv2の2つ. #!/usr/bin/env bash # 利用可能なリージョンを取得 get_regions() { aws ec2 describe-regions | jq -r '.Regio…