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
「オンラインでプログラミングして実行できるサイト」を作ってみた
Search
uutan1108
November 15, 2023
Technology
950
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
「オンラインでプログラミングして実行できるサイト」を作ってみた
「Start Python Club Meetup/みんなのPython勉強会#99」
https://startpython.connpass.com/event/300831/
uutan1108
November 15, 2023
More Decks by uutan1108
See All by uutan1108
コミュニティ・勉強会を作るのは目的じゃない
ohmori_yusuke
1
330
映画のエンドロール風の動画を自動生成するツールを作った
ohmori_yusuke
2
62
アウトプットは“成果物”じゃなく“副産物”だった話
ohmori_yusuke
1
100
MDN Web Docs に日本語翻訳でコントリビュート
ohmori_yusuke
0
820
仕様がそのままテストになる!Javaで始める振る舞い駆動開発
ohmori_yusuke
8
6k
勉強会から始まった僕のDevRel~新卒エンジニアがつないだ2年間の軌跡~
ohmori_yusuke
2
510
WebエンジニアがSwiftをブラウザで動かすプレイグラウンドを作ってみた
ohmori_yusuke
0
350
アニメがエンジニアをつなぐ!「エンジニアニメ」勉強会が巻き起こすCo-Creationの波
ohmori_yusuke
0
320
組織が大きく変わろうとするとき、自分はどうありたいかを考えている
ohmori_yusuke
19
7.7k
Other Decks in Technology
See All in Technology
Multi-Agent並列開発を 安全に回すための技術 / Technology for Safely Multi-Agent Parallel Development
tooppoo
0
250
はてなのサービス基盤を支える Kubernetes《足腰》
masayoshimaezawa
0
420
Text-to-SQLをAgentCoreで実現し、生成されるSQLの精度を定量的に評価する
yakumo
2
380
Microsoft のサポートとフィードバック総まとめ
murachiakira
PRO
0
130
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8.3k
CVE-2026-20833_脆弱性対応とAES 化について
jukishiya
0
340
飲食店もAIで。レジ締めやハンディシステムをつくってる話 / Using AI for restaurant management
vtryo
0
230
NDIAS CTF 2026 問題解説会資料
bata_24
0
160
AWS Summit の片隅で、体育座りしながらコミュニティがにぎわう理由を考えた
k_adachi_01
2
330
AI・ロボティクスと自動化社会 / AI, Robotics, and the Automated Society
ks91
PRO
0
140
AIDLC_ヤフーショッピングの取り組み
lycorptech_jp
PRO
0
430
攻撃者がいなくてもAIエージェントはインシデントを起こす
nomizone
0
180
Featured
See All Featured
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
240
エンジニアに許された特別な時間の終わり
watany
107
250k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
400
For a Future-Friendly Web
brad_frost
183
10k
We Have a Design System, Now What?
morganepeng
55
8.2k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
72
40k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1k
From π to Pie charts
rasagy
0
220
Transcript
「オンラインでプログラミングして 実行できるサイト」 を作ってみた Start Python Club Meetup/みんなのPython勉強会#99 うーたん
自己紹介 • うーたん • 新卒サーバーサイドエンジニア ◦ 株式会社ゆめみ • 趣味 ◦
アニメを見ること 今はミリオンライブを観てます • X ◦ @uutan1108
目次 - 作ったもの - 仕組み - 構成図 - Pythonのコード -
終わりに
作ったもの ⚒
作ったもの - 5種類の言語がブラウザで実 行できるツール - 言語とコード、入力を与えて 実行できる - サーバーで実行した結果を表 示
- スクリプト言語、コンパイル型 言語どちらも実行できる
デモ http://localhost/?lang=python
仕組み ⚙
構成図 🧩
構成図 - WEB のコンテナから 言語実行用のコンテナ に対してコマンドを実行 - docker outside of
docker(DooD)
詳細(DooD について) - DooD : ホストのDockerエンジン経由でコンテナから他のコン テナに命令をする - 共通のボリュームで実行するコードのファイルを共有
Pythonのコード
Pythonのコード レポジトリ:OHMORIYUSUKE/playground 1. ユーザーが入力したコードを書き込む 2. 書き込み完了後にコードを実行 3. 実行結果を返す
終わりに
終わりに - PyCon APAC 2023 の盛り上がりを X で眺めていてPython を書きたくなったので LT
ネタのために書いた - docker (Docker SDK for Python) で実装もしてみたが上手く 行かなかったので調べたい - Go client for the Docker Engine API では動かせたので、今 回の Go バージョンを書きたい
ご清聴ありがとうございました🙇