GitHubに公開しているPublic Repository

目次

はじめに

GitHubに公開設定している各種リポジトリについて紹介します。

READMEを書いていないリポジトリもあってすみません。

中には数年単位でメンテナンスしていないものも含まれますがご容赦を。

Azure関連

azure-line-chatbot

https://github.com/katakura/azure-line-chatbot

[Zenn] Azure OpenAI Service(ChatGPT)を使ってLINE Chatbotを作る

Azure OpenAI Service(GPT-3)を使ったLINE botです。

LINE Messaging APIを使ってWebhookで受けたメッセージをAzure Functionsで受けたのちにOpenAI Serviceに渡し、結果を返信します。

OpenAI Serviceや過去メッセージ保存用のTable StorageへのアクセスにはMEID(旧AAD)による認証を使っているほか、LINE Messaging APIのキー情報についてもKey Vaultに保存しており、安全な利用が可能です。

BicepテンプレートによるAzureリソースのデプロイが一発で可能となっているため、導入のハードルは低いと思います。

Functionsの関数はPython 3で作成していますが、ソースコードは「とりあえず動く」レベルなので、あまり参考にはなりません。

azure-container-app-minecraft

https://github.com/katakura/azure-container-app-minecraft

[Zenn] Azure Container AppにMinecraft Java Edition Serverを立ち上げる

Azure Container AppのTCPイングレスを使って、Minecraft Java Editionのコンテナを動かします。

ワールドデータの永続にはAzure Fire StorageをContainer Appからマウントしています(プレビュー機能)。

デプロイパラメータの指定で、遊んでいないときに自動的にコンテナインスタンスを終了させることができるので、たまに遊びたい人向けに課金を抑える事が可能だったりします。

BicepテンプレートによるAzureリソースのデプロイが一発で可能となっているため、導入のハードルは低いと思います。

azure-switchbot-monitor

https://github.com/katakura/azure-switchbot-monitor

[Zenn] Azure Log AnalyticsにSwitchBotのテレメトリ情報を記録する

SwitchBot Hubに接続された複数台の温湿度計の情報をAzure Functionsで定期的に取得してAzure Log Analyticsに保存します。

保存したデータはLog AnalyticsのKQLで分析したりできます。

BicepテンプレートによるAzureリソースのデプロイが一発で可能です。

azure-minecraft-bedrock-server

https://github.com/katakura/azure-minecraft-bedrock-server

AzureにMinecraft統合版サーバを立ち上げる(デプロイ編)

AzureにMinecraft統合版サーバを立ち上げる(技術解説編)

Azure仮想マシン(Flatcar)上のDokerコンテナでMinecraft Bedrock Editionのサーバを動作させます。

少し古いので今動くかはわかりませんが、FlatcarのInjectionを使って仮想マシンデプロイ時にコンテナの起動までを行っています。

BicepテンプレートによるAzureリソースのデプロイが一発で可能です。

Synology Disk Station

synology-line-notify

https://github.com/katakura/synology-line-notify

[[Zenn] Synology NASの通知をLINE Notifyに送る](Synology NASの通知をLINE Notifyに送る)

Dockerが動作するSynology DSシリーズ(私はDS220+を使用)で発報アラートをLINE Notifyに通知する仕組みです。

DSMのWebhookを使って同じDSM上で動作しているDockerコンテナ内からLINE APIを使って通知をしています。

何気に便利でずっと愛用しています。

その他

porolith-pc98

https://github.com/katakura/porolith-pc98

PC98版の☆ぽろりす☆のY2K問題対応版をリリースしました(Version 1.57)

1990年代に一世風靡?した「☆ぽろりす☆」のソースコード一式です。

C言語(一部アセンブラ)で書かれており、今でもPC-9801エミュレータ上でちゃんと動作します。

ソースコードは当時社会人1年生で始めてC言語を使い始めたレベルなので、酷いですが一応動きますw

おわりに

他にも作ったはいいけどまったくメンテしていないパブリックリポジトリが複数存在していますが、代表的なものは上記です。

何かのお役に立てばと思います。