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
GitHub Codespaces が拡げる開発環境、いつでもどこでも Visual Stud...
Search
Kazumi OHIRA
January 21, 2023
Technology
3
2.3k
GitHub Codespaces が拡げる開発環境、いつでもどこでも Visual Studio Code で!
VS Code Conference Japan 2022 - 2023 でお話したセッションの資料です。
https://vscode.connpass.com/event/263206/
Kazumi OHIRA
January 21, 2023
Tweet
Share
More Decks by Kazumi OHIRA
See All by Kazumi OHIRA
【再】#2 GitHub Copilot Enterprise&GitHub Actionsナレッジ オープニング資料
dzeyelid
0
90
GitHub最新情報キャッチアップ 2024年3月
dzeyelid
17
5.5k
GitHub dockyardコミュニティ 竣工イベント!オープニング資料
dzeyelid
0
290
地味だけど劇的に便利になるGitHubリポジトリ設定あれこれ
dzeyelid
1
2.3k
GitHub最新情報キャッチアップ 2023年6月
dzeyelid
2
3.1k
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOps
dzeyelid
1
210
高さ比べじゃない、キャリアは歩んできた道
dzeyelid
0
560
GitHub Copilotとともに次の開発体験へ
dzeyelid
1
380
突如登場したAzure Developer CLIでなにができるのか?検証してみる
dzeyelid
0
120
Other Decks in Technology
See All in Technology
10分で学ぶ、RAGの仕組みと実践
supermarimobros
0
910
Cursorを全エンジニアに配布 その先に見据えるAI駆動開発の未来 / 2025-05-13-forkwell-ai-study-1-cursor-at-loglass
itohiro73
2
410
CARTA HOLDINGS エンジニア向け 採用ピッチ資料 / CARTA-GUIDE-for-Engineers
carta_engineering
0
27k
Previewでもここまで追える! Azure AI Foundryで始めるLLMトレース
tomodo_ysys
2
630
Как мы автоматизировали интеграционное тестирование с Gonkey и не пожалели. Паша Егорычев, Кирилл Поляков
lamodatech
0
2.1k
グループ ポリシー再確認 (2)
murachiakira
0
230
自動化の第一歩 -インフラ環境構築の自動化について-
smt7174
1
120
LLM アプリケーションのためのクラウドセキュリティ - CSPM の実装ポイント-
osakatechlab
0
370
genspark_presentation.pdf
haruki_uiru
1
240
CodeRabbitと過ごした1ヶ月 ─ AIコードレビュー導入で実感したチーム開発の進化
mitohato14
1
240
Part1 GitHubってなんだろう?その1
tomokusaba
3
740
newmo の創業を支える Software Architecture と Platform Engineering
110y
1
350
Featured
See All Featured
How to Ace a Technical Interview
jacobian
276
23k
GitHub's CSS Performance
jonrohan
1031
460k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.8k
A Tale of Four Properties
chriscoyier
159
23k
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.4k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
179
53k
Site-Speed That Sticks
csswizardry
6
540
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
VelocityConf: Rendering Performance Case Studies
addyosmani
329
24k
Code Reviewing Like a Champion
maltzj
523
40k
The Straight Up "How To Draw Better" Workshop
denniskardys
233
140k
Transcript
GitHub Codespaces が拡げ る開発環境、いつでもどこでも Visual Studio Code で! VS Code
Conference Japan 2022 - 2023
岩永かづみ / Kazumi IWANAGA • Microsoft MVP for Azure •
ZEN Architects 所属 • GitHub公認トレーナー • 得意な領域 • Infrastructure as Code • GitHub Actions による自動化 • 技術コミュニティ • Code Polaris / Hack Everything. • @dz_ • @dzeyelid • @dzeyelid
ハピバ!🫶🍩 • Birthday donation • 国連UNHCR協会 • 難民支援 • 認定NPO法人フローレンス
• 病児保育、待機児童、障害児保育、虐待、ひとり親貧困などの問題の解決 • 継続支援 • NPO法人 CLACK • 貧困家庭の高校生に、プログラミング学習支援とキャリア支援で自走の力を
イントロ
開発は一カ所にとどまらない
Visual Studio Code があれば • Windows, MacOS, Linux などマルチプラットフォーム対応 •
Settings Sync で設定を共有できる • Live Share で環境を共有できる • コンテナや Vagrant などを利用して構築した環境に、Remote development で接続して開発できる
Visual Studio Code の開発環境の例 コンテナ ランタイム Visual Studio Code コンテナ
インスタンス Remote development
でもまだ"運用でカバー"がなくならない? デバッグ中だけど、もう出かけないと。 途中のコード、push したくないなぁ… ノートPC、しばらく使ってなかったから npm install 終わらん! 出先で更新したとこ、取込み忘れてた! コンフリクト直さないと、めんどうだーー
しかも、モバイル回線…
そこで、 GitHub Codespaces
GitHub Codespaces とは
Visual Studio Code の開発環境の例 コンテナ ランタイム Visual Studio Code コンテナ
インスタンス Remote development
GitHub Codespaces の場合 Visual Studio Code codespace インスタンス Remote development
GitHub Codespaces
GitHub Codespaces の場合 Visual Studio Code codespace インスタンス GitHub Codespaces
ウェブブラウザ
GitHub Codespaces の場合 Visual Studio Code codespace インスタンス GitHub Codespaces
GitHub Codespaces の場合 Visual Studio Code codespace インスタンス dev GitHub
Codespaces codespace インスタンス review
実際に触ってみるデモ
GitHub Codespaces ポイント
使い慣れたインタフェースから使う • ブラウザ、または対応したエディタやIDEから接続し、あたかもローカ ルで開発している感覚で利用できる • Visual Studio Code • JetBrains
IDE • JupyterLab
使い慣れたインタフェースから使う • Visual Studio Code で GitHub Codespaces を使用する -
GitHub Docs • JetBrains IDE で GitHub Codespaces を使う - GitHub Docs • 機械学習のための GitHub Codespaces の概要 - GitHub Docs
テンプレートから環境を立上げられる • テンプレートから立ち上げる場合は、リポジトリがなくても利用できる
リポジトリから環境を立ち上げられる • リポジトリを clone した状態で環境が立ち上がる
必要な環境を数クリックで作成できる • 認証済み、またはコミュニティによるベースイメージが提供されている • Features (後述)で主要なCLIや言語をインストールできる
必要な環境を数クリックで作成できる • 認証済み、またはコミュニティによるベースイメージが提供されている • Features (後述)で主要なCLIや言語をインストールできる
必要な環境を数クリックで作成できる • 認証済み、またはコミュニティによるベースイメージが提供されている • Features (後述)で主要なCLIや言語をインストールできる
誰でも同じ環境を立ち上げられる • 作成した環境設定(devcontainer.json)をリポジトリに置いて共有 うすることで、誰でも同じ環境を立ち上げることができる
インスタンスはアカウントごと • 立ち上げたインスタンスはアカウントごとに分離されている • コラボレーションには、Live share やポートフォワーディング(後述) の公開を利用できる
インスタンスのスペックを選択できる
マシンタイプ マシンタイプ メモリ ストレージ 備考 2 core 4 GB RAM
32 GB 4 core 8 GB RAM 32 GB 8 core 16 GB RAM 64 GB 16 core 32 GB RAM 128 GB 32 core 64 GB RAM 128 GB 申請が必要 6 core (1 GPU) 112 GB RAM 128 GB 申請が必要
localhost へのポートフォワーディング • localhost にポートフォワードしてくれるため、あたかもローカル環境 のようにシームレスに開発できる • パブリック、または Organization 内向けに公開することもできる
Dev container でカスタマイズ • Features による簡単インストール • VS Code のエクステンションのインストール
• Dockerfile によるより自由なカスタマイズ
Dev container でカスタマイズ
prebuild で素早く立上げる
課金体系 • 利用時間とストレージの使用量で算出 • 個人アカウントには、1ヶ月あたり無料利用枠がふくまれる • GitHub Free – 15GB/月のストレージ、120時間/コアの利用時間
• GitHub Pro – 20GB/月のストレージ、180時間/コアの利用時間 マシンタイプ 利用時間の価格/時間 2 core $0.18 4 core $0.36 8 core $0.72 16 core $1.44 32 core $2.88 ストレージ量 ストレージ量の価格/月 1 GB $0.07
課金の様子 ※ GitHub Pro の無料利用枠が適用されています
課金体系(Organization) • Organization 配下のリポジトリで codespace を立ち上げる場合、 Organization の設定によって、課金される対象が異なる Organization の
spending limit 説明 0 codespace を起動するユーザーに課金される 1 以上、または Unlimited spending 上限に達するまでは、Organization に課金される
管理 • Dotfiles • シークレット • アカウント • リポジトリ •
GPG verification • デフォルトのエディタ • アイドル タイムアウト • 保持期間 • リージョン
管理(Organization) • 利用可能なメンバー • ポリシー • マシンタイプ • ポートの公開範囲 •
アイドル タイムアウトの最大値 • 保持期間の最大値 • 利用可能なイメージの制限 • API により、メンバーの利用状況を取得できる
管理(Organization)
ぜひ体験してみてね! GitHub Codespaces
GitHub Codespaces と Azure でつくる、 エンタープライズレベルの開発環境 https://msevents.microsoft.com/event?id=2453316745
Thank you so much🍩.