Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
APIサーバーが止まったので、GitHub Actions内にAPIサーバーを立てた話
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
uutan1108
April 04, 2025
Programming
410
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
APIサーバーが止まったので、GitHub Actions内にAPIサーバーを立てた話
https://odekake-tech.connpass.com/event/346217/
uutan1108
April 04, 2025
More Decks by uutan1108
See All by uutan1108
Designing a Cross-Disciplinary Engineering Community Through Anime
ohmori_yusuke
2
73
コミュニティ・勉強会を作るのは目的じゃない
ohmori_yusuke
1
370
映画のエンドロール風の動画を自動生成するツールを作った
ohmori_yusuke
2
79
アウトプットは“成果物”じゃなく“副産物”だった話
ohmori_yusuke
1
120
MDN Web Docs に日本語翻訳でコントリビュート
ohmori_yusuke
0
850
仕様がそのままテストになる!Javaで始める振る舞い駆動開発
ohmori_yusuke
8
6.1k
勉強会から始まった僕のDevRel~新卒エンジニアがつないだ2年間の軌跡~
ohmori_yusuke
2
520
WebエンジニアがSwiftをブラウザで動かすプレイグラウンドを作ってみた
ohmori_yusuke
0
360
アニメがエンジニアをつなぐ!「エンジニアニメ」勉強会が巻き起こすCo-Creationの波
ohmori_yusuke
0
340
Other Decks in Programming
See All in Programming
PHP に部分適用が来るぞ!……ところで何それ?おいしいの? #phpcon / phpcon-2026
shogogg
0
610
VibeCodingからAgenticWorkflowへ
starfish719
0
380
React本体のコードリーディング
high_g_engineer
1
140
TSX の <Hoge<Fuga>> という構文に驚いた話 / tsx-type-argument-syntax
kanaru0928
0
210
Japan Community Day at Kubecon + CloudNativeCon Japan 2026: Learning Container Privilege Control by Building My Own Low-Level Container Runtime
ternbusty
1
150
Laravel Boostに学ぶ、AIにPHPを書かせる技術 〜OSSの実装から蒸留するエージェント制御の王道〜
kentaroutakeda
3
680
ルールを書いて終わらせないハーネスエンジニアリング
yug1224
4
1.9k
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
550
OpenSpecのproposalにbrainstormingを持たせてみた
tigertora7571
1
210
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
300
そこに3びきプロダクトがいるじゃろう——生成AI時代における“価値が届かない理由”の構造
kosuket
0
460
Apache Hive: そしてCloud Native Lakehouseへ
okumin
1
220
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.5k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
200
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
410
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.8k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
480
How GitHub (no longer) Works
holman
316
150k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
200
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
160
4 Signs Your Business is Dying
shpigford
187
22k
Transcript
APIサーバーが止まったので、 GitHub Actions内にAPIサーバー を立てた話 うーたん 花見LT in 大宮公園 ~春の風を感じながらゆるっとLT~
自己紹介 • うーたん ◦ X:@uutan1108 • 株式会社ゆめみ ◦ 新卒3年目 ◦
サーバーサイドエンジニア • 趣味 ◦ アニメを観ること
GitHub Actions でやっていること
https://github.com/engineers-anime/anime-info-gif
https://github.com/engineers-anime/anime-info-gif 今日誕生日のアニメキャラクターを 外部 API から取得
外部 API サーバー GitHub Actions APIサーバーに クエリを投げる 今日誕生日の キャラは?
外部 API サーバー GitHub Actions クエリの結果を 返却 郁田 はるき
外部 API サーバー GitHub Actions Gif 画像を生成 クエリの結果を 返却 郁田
はるき
API サーバーが停止
外部 API サーバー GitHub Actions Gif 画像を生成
困った
でも、外部 API サーバーのデータは 公開されている
https://github.com/imas/imasparql
データだけじゃ、 今日誕生日のアニメキャラクターを検索 できないので API サーバーを立てないと!!
データが SPARQL
SPARQL とは? SPARQL(スパークル、SPARQL Protocol and RDF Query Languageの再帰的頭字語)は、RDF問合せ言語 の1つである。RDF問合せ言語は、Resource Description
Framework (RDF) で記述されたXMLや TurtleなどのRDFデータのリソースを取り扱うためのコ ンピュータ言語である。 https://ja.wikipedia.org/wiki/SPARQL
https://github.com/imas/imasparql
https://github.com/imas/imasparql
Apache Jena Fuseki が必要
Apache Jena Fuseki とは
Apache Jena Fuseki とは Fuseki とは、RDF ファイルを永続化し、RDF クエリで 検索することができる RDF
データベースサービスで す。 https://shirasagi.github.io/installation/fuseki.html
XML の RDF をいい感じに変換して、 Apache Jena Fuseki (APIサーバー)で、 クエリできるようにする
やってみる
RDF(XML)
https://github.com/imas/imasparql
https://github.com/imas/imasparql
「天海春香」に一致するキャラをフィルタ
SPARQL
None
Apache Jena Fuseki
None
SPARQL
None
レスポンス
とりあえず、 サーバーでクエリできるようになった
👏
API サーバー立てられるけど、お金...
今回は、APIサーバーと言いつつ GETしかいらないからサーバー 立てなくてもいいな!
合体!!
GitHub Actions API サーバー Actions 内で起動
GitHub Actions API サーバー Gif 画像生成 ローカルの API に リクエスト
GitHub Actions API サーバー Gif 画像生成 Gif 画像を生成
デメリット
時間がかかる
Actions 内で API を立てていない時 7分2秒 3分25秒
Actions 内で API を立てた時 (XML を変換したりで時間がかかっている) 7分2秒 3分25秒
でも、無料でできているから満足!
宣伝
None
None
None
None
大きめの会場を貸し切ってやります!
None
場所:武蔵境駅前 時間:8月10日(日・祝前日) 色々企画しているので来てくだ さい!