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で改善する チームの開発環境
Search
Yuta Matsumura
December 06, 2022
Technology
0
140
GitHub Codespacesで改善する チームの開発環境
https://micug.jp/event/gofastandrobustwithgithub/
Yuta Matsumura
December 06, 2022
Tweet
Share
More Decks by Yuta Matsumura
See All by Yuta Matsumura
.NET AspireでAzure Functionsやクラウドリソースを統合する
tsubakimoto_s
0
200
Microsoft Entra External IDとAzure AD B2C
tsubakimoto_s
0
450
Minimal Observability on Minimal API
tsubakimoto_s
0
64
ワークフローのコピペを自作で解消した話
tsubakimoto_s
0
46
Azure AI ことはじめ
tsubakimoto_s
0
550
Azureのコアサーバーレス Azure Functions
tsubakimoto_s
0
540
米国カンファレンスで活躍したAzure AI Speech
tsubakimoto_s
0
630
GitHub Codespaces Updates
tsubakimoto_s
0
480
.NET 8 がリリース直前だから振り返る
tsubakimoto_s
0
570
Other Decks in Technology
See All in Technology
[SRE kaigi 2025] ガバメントクラウドに向けた開発と変化するSRE組織のあり方 / Development for Government Cloud and the Evolving Role of SRE Teams
kazeburo
4
1.7k
20250125_Agent for Amazon Bedrock試してみた
riz3f7
2
110
DevSecOps入門:Security Development Lifecycleによる開発プロセスのセキュリティ強化
yuriemori
0
220
panicを深ぼってみる
kworkdev
PRO
1
120
第27回クラウド女子会 ~re:Invent 振り返りLT会~ 私の周辺で反響のあった re:Invent 2024 アップデートつれづれ/reinvent-2024-update-reverberated-around-me
emiki
1
570
MicrosoftのOSSだけでAIによるブラウザテストを構成する
ymd65536
1
240
サーバーレスで楽しよう!お気軽に始められる3つのポイント / Have fun with Serverless!
_kensh
2
100
20250129 Findy_テスト高活用化
dshirae
0
190
CNAPPから考えるAWSガバナンスの実践と最適化
yuobayashi
5
600
Enhancing SRE Using AI
yoshiiryo1
1
200
製造業とソフトウェアは本当に共存できていたのか?品質とスピードを問い直す
takabow
14
4.7k
ドメイン駆動設計によるdodaダイレクトのリビルド実践 / Rebuild practice of doda direct with domain-driven design
techtekt
0
490
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
44
13k
Learning to Love Humans: Emotional Interface Design
aarron
274
40k
A Philosophy of Restraint
colly
203
16k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.4k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Making the Leap to Tech Lead
cromwellryan
133
9k
Why Our Code Smells
bkeepers
PRO
335
57k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Site-Speed That Sticks
csswizardry
3
300
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Transcript
GitHub Codespacesで改善する チームの開発環境 2022/12/06 MICUG GitHub Part Yuta Matsumura (Alterbooth
Inc.) Copyright © Alterbooth Inc. All Rights Reserved.
松村 優大 (Yuta Matsumura) Chief Technical Architect (C#, PHP, Azure)
Microsoft MVP (Developer Technologies) #fukuten #devblogradio の中の人 @tsubakimoto_s Currently working for Copyright © Alterbooth Inc. All Rights Reserved.
Copyright © Alterbooth Inc. All Rights Reserved.
こんな経験ありませんか? これ作ったので 動かしてみて 動かない・・・ Copyright © Alterbooth Inc. All Rights
Reserved.
こんな経験ありませんか? 開発環境 • Windows • Node.js 14 • VS Code
• 手動インストール • … 開発環境 • macOS • Node.js 18 • IDE • homebrew • … 開発環境の作り方が バラバラ Copyright © Alterbooth Inc. All Rights Reserved.
開発環境の揃え方 • 同じ PC の支給 • 環境構築のマニュアル化 • セットアップスクリプトの配布 •
共通の仮想イメージの配布 • 共通のコンテナーイメージの配布 Copyright © Alterbooth Inc. All Rights Reserved.
Visual Studio Code + Extensions • 開発環境を「リモート」にもつ仕組み WSL or Containers
▼ • 開発環境としてコンテナーを準備する (devcontainer) • https://code.visualstudio.com/docs/remote/containers • Visual Studio Code + 拡張機能パック • Docker (Windows / macOS / Engine) Copyright © Alterbooth Inc. All Rights Reserved.
devcontainer の始め方① Copyright © Alterbooth Inc. All Rights Reserved.
devcontainer の始め方① 1. アプリケーションを VS Code で開く 2. Dockerfile を準備する
3. コマンドパレットを開く Dev Containers: Open Folder in Container… 4. Dockerfile のあるフォルダを指定する 5. devcontainer.json のできあがり Copyright © Alterbooth Inc. All Rights Reserved.
Copyright © Alterbooth Inc. All Rights Reserved.
devcontainer の始め方② Copyright © Alterbooth Inc. All Rights Reserved.
devcontainer の始め方② 1. アプリケーションを VS Code で開く 2. コマンドパレットを開く 3.
devcontainer 構成の設定 Dev Containers: Add Development Container Configuration Files... 4. プリセットから選択 Show All Definitions... > Definitions 5. コンテナーで開き直す Reopen in Container Copyright © Alterbooth Inc. All Rights Reserved.
開発に必要なツールも一緒にインストールすることができます Copyright © Alterbooth Inc. All Rights Reserved.
.devcontainer/ .devcontainer ├ base.Dockerfile │ ベースイメージ構成 (参考用) ├ devcontainer.json │
コンテナー構成 └ Dockerfile Copyright © Alterbooth Inc. All Rights Reserved.
▶コンテナー構成 ▶VS Code構成 ▶転送ポート番号 ▶コンテナー作成後コマンド ▶コンテナー内ユーザー Copyright © Alterbooth Inc.
All Rights Reserved.
GitHub Codespaces Copyright © Alterbooth Inc. All Rights Reserved.
GitHub Codespaces Copyright © Alterbooth Inc. All Rights Reserved. GitHub
上にホストされる仮想マシンを使用して、 オンライン上に開発環境を構築することができる。 devcontainer.json をリポジトリに保管している場合、 devcontainer.json の構成がセットアップされる。
その他のクラウド上の開発環境 • Azure Virtual Desktop • 開発環境の構築は別途必要 • Windows OSのみ
• Azure Virtual Machine • 開発環境の構築は別途必要 • Windows OS, Linux OS • Microsoft Dev Box (Preview) • Azureサービスだが、Azure AD P1のユーザーライセンスが必要 • https://learn.microsoft.com/ja-jp/azure/dev-box/quickstart-configure-dev- box-service#prerequisites Copyright © Alterbooth Inc. All Rights Reserved.
GitHub Codespaces のマシン種別と価格 Copyright © Alterbooth Inc. All Rights Reserved.
https://docs.github.com/ja/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces
“組織” で GitHub Codespaces を使う利点 • 開発環境を統一することができる • Git で開発環境を管理することができる
• 開発用 PC の調達が必須でなくなる Copyright © Alterbooth Inc. All Rights Reserved.
GitHub Enterprise Cloud / Server 個人所有のGitHub アカウントは、組織の管理下から外れちゃう? ▶自社 ID 基盤と
SAML 連携を行うことで、組織アカウントとの シングルサインオンを構成可能。 Copyright © Alterbooth Inc. All Rights Reserved. 組織アカウント ログイン Enterprise Repository, Issue, Pull requests Actions, Projects, Wiki Codespaces, Advanced Security
GitHub Codespaces のセキュリティ • 分離された仮想マシンや仮想ネットワーク • Codespace にアクセスできるのは作成者のみ • 外部からのアクセス不可
• ポートフォワーディング機能 • シークレット管理 Copyright © Alterbooth Inc. All Rights Reserved. https://docs.github.com/en/codespaces/codespaces-reference/security-in-github-codespaces
Codespace のパーソナライズ VSCode 設定の同期 dotfiles リポジトリの反映 Copyright © Alterbooth Inc.
All Rights Reserved. https://docs.github.com/en/codespaces/customizing-your-codespace/personalizing-github-codespaces-for-your-account
Appendix • GitHub Universe 2022 • https://github.blog/jp/2022-11-10-everything-new-from-github-universe-2022/ • Azure AD
+ GitHub Enterprise • https://learn.microsoft.com/ja-jp/azure/active-directory/saas-apps/github-ae-tutorial • https://learn.microsoft.com/ja-jp/azure/active-directory/saas-apps/github-enterprise-cloud- enterprise-account-tutorial • GitHub Codespaces • https://docs.github.com/ja/billing/managing-billing-for-github-codespaces/about-billing- for-github-codespaces • https://docs.github.com/en/codespaces/codespaces-reference/security-in-github- codespaces • https://docs.github.com/en/codespaces/customizing-your-codespace/personalizing-github- codespaces-for-your-account • https://aadojo.alterbooth.com/entry/2022/08/24/095308 Copyright © Alterbooth Inc. All Rights Reserved.
Copyright © Alterbooth Inc. All Rights Reserved. https://www.alterbooth.com/products/ghec/ https://prtimes.jp/main/html/rd/p/000000084.000043685.html
Copyright © Alterbooth Inc. All Rights Reserved. より多くの人にもっとクラウドを楽しんでほしい。 つまらない世界からもっと 刺激のある世界へ変化させよう!