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
200
GitHub Codespacesで改善する チームの開発環境
https://micug.jp/event/gofastandrobustwithgithub/
Yuta Matsumura
December 06, 2022
Tweet
Share
More Decks by Yuta Matsumura
See All by Yuta Matsumura
私のMCPの使い方
tsubakimoto_s
0
98
これからはじめる Model Context Protocol
tsubakimoto_s
0
37
Cloudflare の MCP サーバーをためしてみた
tsubakimoto_s
1
35
re:Invent の裏でアップデートされていた .NET Aspire で統合するAWS のクラウドリソース
tsubakimoto_s
1
110
.NET AspireでAzure Functionsやクラウドリソースを統合する
tsubakimoto_s
0
310
Microsoft Entra External IDとAzure AD B2C
tsubakimoto_s
0
1.9k
Minimal Observability on Minimal API
tsubakimoto_s
0
110
ワークフローのコピペを自作で解消した話
tsubakimoto_s
0
85
Azure AI ことはじめ
tsubakimoto_s
0
680
Other Decks in Technology
See All in Technology
Findy Team+ QAチーム これからのチャレンジ!
findy_eventslides
0
450
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
12
81k
Geospatialの世界最前線を探る [2025年版]
dayjournal
1
240
20251007: What happens when multi-agent systems become larger? (CyberAgent, Inc)
ornew
1
440
事業開発におけるDify活用事例
kentarofujii
1
290
Digitization部 紹介資料
sansan33
PRO
1
5.6k
Biz職でもDifyでできる! 「触らないAIワークフロー」を実現する方法
igarashikana
0
260
Claude Codeを駆使した初めてのiOSアプリ開発 ~ゼロから3週間でグローバルハッカソンで入賞するまで~
oikon48
10
4.9k
衛星画像超解像化によって実現する2D, 3D空間情報の即時生成と“AI as a Service”/ Real-time generation spatial data enabled_by satellite image super-resolution
lehupa
0
190
Zephyr(RTOS)にEdge AIを組み込んでみた話
iotengineer22
0
170
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.2k
Performance Insights 廃止から Database Insights 利用へ/transition-from-performance-insights-to-database-insights
emiki
0
310
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.7k
Git: the NoSQL Database
bkeepers
PRO
431
66k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
The Pragmatic Product Professional
lauravandoore
36
6.9k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Facilitating Awesome Meetings
lara
56
6.6k
Faster Mobile Websites
deanohume
310
31k
Keith and Marios Guide to Fast Websites
keithpitt
411
23k
The Cost Of JavaScript in 2023
addyosmani
55
9k
GitHub's CSS Performance
jonrohan
1032
470k
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. より多くの人にもっとクラウドを楽しんでほしい。 つまらない世界からもっと 刺激のある世界へ変化させよう!