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
uutan1108
April 04, 2025
Programming
420
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
3
98
コミュニティ・勉強会を作るのは目的じゃない
ohmori_yusuke
1
390
映画のエンドロール風の動画を自動生成するツールを作った
ohmori_yusuke
2
87
アウトプットは“成果物”じゃなく“副産物”だった話
ohmori_yusuke
1
120
MDN Web Docs に日本語翻訳でコントリビュート
ohmori_yusuke
0
880
仕様がそのままテストになる!Javaで始める振る舞い駆動開発
ohmori_yusuke
8
6.1k
勉強会から始まった僕のDevRel~新卒エンジニアがつないだ2年間の軌跡~
ohmori_yusuke
2
530
WebエンジニアがSwiftをブラウザで動かすプレイグラウンドを作ってみた
ohmori_yusuke
0
370
アニメがエンジニアをつなぐ!「エンジニアニメ」勉強会が巻き起こすCo-Creationの波
ohmori_yusuke
0
350
Other Decks in Programming
See All in Programming
Go 1.27 における memory allocation の高速化
andpad
0
370
初心者DevRelとして参加者だった私が、DevRel Talks!#2に登壇するまでにしてきたこと
sokohirai
0
310
【DroidKaigi 2026】「アクセシビリティを利用するとき、 アクセシビリティもまたこちらを利用している」 〜マルウェアによる攻撃と防衛について〜
halunoyo
0
180
数年滞っていたダークモード対応をおよそ2週間で完了させる
chigichan24
0
200
初めての模倣学習とVLA
natsutan
0
410
PyO3 で既存 Python 評価器を Rust core 化する ー wasm-bindgen でブラウザにも配るための設計
kdash
1
180
異なる設計思想のフレームワークを経験して得た学び
amekuhideki
2
1.4k
DroidKaigi 2026 「個人開発という実験場: Android エンジニアが手にする4つの自由」
slashnephy
0
180
仕様駆動開発の消費期限
watany
20
9.2k
PyConJP2026_wat_Python × Signal Processing: How to Draw Pictures with Sound Using Spectrogram Art
wat
0
650
Flow は今どうなっているか
mizdra
PRO
0
830
AIを上手に使っていこうとしたら越境せざるを得なくなった話 〜実践1年で見えた境界を越えなければならない理由と進め方〜 / Crossing borders with AI
tomoyakitaura
2
930
Featured
See All Featured
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
260
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
590
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
490
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
330
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
830
GraphQLとの向き合い方2022年版
quramy
50
15k
Designing for humans not robots
tammielis
254
26k
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日(日・祝前日) 色々企画しているので来てくだ さい!