ブラックボックス

プログラミングのノウハウやライフハックをどんどん投稿していきたい

Dec 30, 2023 - 6 minute read - ノウハウ

【Hugo】S3+CloudFront上のHugoをCodeBuildで自動デプロイする

今年の夏にこのブログをHugoに移行しましたが、移行後はAWS上のS3+CloudFrontで動かしています。
現在の構成を簡単な図にすると以下のような形です。
構成図

EC2 on WordPressからの移行ということで、ミドルウェア類の管理の煩わしさからの解放と、料金的なメリットが非常に大きかったです。
一方、コンテンツの更新は面倒になり、更新するにはビルドしてS3バケットにアップロード、といった手順が必要となりました。
そこで、ビルドと更新を自動化する為、CodeBuildでコンテンツの更新をで行う仕組みを構築することとしました。

  • MarkdownなどHugoのコンテンツはGitHubで管理する
  • GitHubでmasterブランチへのPushを検知したらCodeBuildで自動的にビルドする
  • ビルドが完了したらS3バケットにアップロードする
  • CloudFrontのキャッシュを削除し更新後のコンテンツがすぐに表示されるようにする

本記事は既に前述の構成が組まれていることが前提となります。
S3+CloudFrontの構築方法については記載がございませんのでご注意ください。

Aug 10, 2023 - 4 minute read - ノウハウ

【Hugo】Wordpressで書いた記事をHugoに対応したフォーマットにエクスポートする

突然ですが、このブログはWordpressから Hugoに移行しました。
以前はAWSのEC2上にWordpressを構築していましたが、Wordpressはそこまでヘビーに使う訳でもないので機能が過剰であること、EC2のミドルウェアやWordpressのプラグインのバージョン管理がまあまあの負荷となっていたことなどもあり、CMS形式ではなく静的ページベースのブログにしたいと考えていました。

移行にあたり一番の問題となっていたのは、これまで書き溜めていた記事をそのまま持っていくことでした。
筆不精なので運営年数の割に大した記事数ではないとはいえ、手動で移行するのは骨が折れる、ということで、Wordpressで書いた記事をHugoでも引き続き表示出来るような形式でデータをエクスポートして移行したので、その手順を残しておきます。

環境:

  • Wordpress:6.2.2(本記事内のスクリーンショットは6.3)
  • Hugo:0.111.3

Jan 5, 2023 - 4 minute read - ノウハウ

【PS5/PS4】Logicool製のキーボードをPS5・PS4で使用する

(2023年2月2日追記)
PS5でも同じ方法で動作を確認した為タイトルを変更しました


PS4でたまに文字を打たなければいけないことがありますが、コントローラだと長文を打つのが面倒だなと常々思っていました。
本当にたまになので、PS4用にキーボードを買うのもどうかと思っていましたが、現在使用している MX Keysが複数デバイスの接続に対応しているので、PS4とBluetooth接続をしようとしましたが、どうも接続が出来ませんでした。

Bluetoothではなく、Unifyingレシーバーを使用することでPS4と接続が出来るようになったので、やり方をメモしておきます。
今回は、前述の通りMX Keysで動作を確認しましたが、LogicoolのUnifying対応デバイスであれば記載した方法で可能かと思われます。
なお、セットアップにはパソコンが必要となります。

環境:

  • PlayStation 4:CUH-1200シリーズ
  • パソコンのOS:Windows 10 Pro(22H2)
  • Unifying Softwareバージョン:2.52.33

Oct 26, 2022 - 3 minute read - ノウハウ

【AWS】自作AMIからEC2インスタンス作成後、ネットワークに繋がらなった時に試したこと

AMIからEC2インスタンスをいくつも作れるのは便利ですが、作成後にネットワークにつながらない為、該当のEC2インスタンスにSSH接続も出来ずに詰みかけたことがありました。
ネットワークが繋がるよう対処した時のログを残しておきます。

環境:

  • OS:CentOS 7.9-2009

Jun 7, 2022 - 4 minute read - ノウハウ

【Android】Google ファミリー リンクを設定してアプリのインストールを承認制にしてみた

訳あって、離れて暮らす親族のAndroidスマートフォンのアプリインストールを制限する必要があった。
アプリのインストール自体を全く出来ないようにするようなアプリはあるようだが、インストールが全く出来ないと、必要なアプリのインストールがあった際は現地に赴いて設定しなければならず、あまり現実的ではない。
問題なさそうなアプリであれば許可、怪しいアプリなら否認といった、承認制といった仕組みが遠隔でも出来ないか探していた所、Google ファミリー リンクが適切のようだったので、設定のメモを残してみる。

以降、制限を設定する親族を「制限対象」、承認を行う人を「管理者」として記載します。

環境:

  • 管理者:iOS15
  • Google ファミリー リンクアプリのバージョン(iOS版):1.96.22076
  • 制限対象:Android 11