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
ローカルIaCのススメ
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
KEY60228
June 01, 2024
Technology
140
0
Share
ローカルIaCのススメ
#エンジニアコネクト
KEY60228
June 01, 2024
More Decks by KEY60228
See All by KEY60228
AI Agentの登場で変わりゆくプロダクト開発の話
key60228
0
10
コーディングエージェント時代のNeovim
key60228
1
270
学問のすゝめ
key60228
0
45
カンファレンススタッフのススメ
key60228
0
54
ニアリージョブホッパーが活躍するために
key60228
0
260
Other Decks in Technology
See All in Technology
アプリブロック機能のつくりかたと、AIとHTMLの不合理な相性の良さについて
kumamotone
1
260
20260515 ID管理は会社を守る大切な砦!〜🔰情シス向け〜
oidfj
0
750
20260516_SecJAWS_Days
takuyay0ne
2
530
AWS WAFの運用を地道に改善し、自社で運用可能にするプラクティス
andpad
1
610
Claude Code / Codex / Kiro に AWS 権限を 渡すとき、何を設計すべきか
k_adachi_01
6
1.9k
Gaussian Splattingの実用化 - 映像制作への展開
gpuunite_official
0
210
AWS運用におけるAI Agent活用術 / JAWS-UG 神戸 #11 LT大会
genda
1
310
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.5k
"うちにはまだ早い"は本当? ─ 小さく始めるPlatform Engineering入門
harukasakihara
7
650
Swift Sequence の便利 API 再発見
treastrain
1
290
AI Agent に“攻略本”を渡したら、150フォームの移行が回り始めた話/登壇資料(高橋 悟生)
hacobu
PRO
0
190
AIのために、AIを使った、Effect-TSからの脱却 〜テストを活用した安全なリファクタリングの進め方〜
bitkey
PRO
0
160
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
6.1k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
160
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
340
Deep Space Network (abreviated)
tonyrice
0
150
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
800
Accessibility Awareness
sabderemane
1
120
Darren the Foodie - Storyboard
khoart
PRO
3
3.3k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.9k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Navigating Weather and Climate Data
rabernat
0
190
Producing Creativity
orderedlist
PRO
348
40k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Transcript
Click to edit Master title style 1 ローカルIaCで即立ち上がり、即開発! 2024/6/1 エンジニアコネクト
(#エンジニアコネクト) Kenta Yamaguchi (@KEY60228)
Click to edit Master title style 2 whoami 2 Kenta
Yamaguchi (ぐっさんと呼んでもらえると嬉しいです) Member of: 株式会社CyberAgent / 株式会社AI Shift “AIを民主化する” というミッションの元、 新規プロダクトの開発に励んでいます! Main Tech Stacks: Go, TypeScript Interest: アジャイルプロセスや目標設定に関心があったりします X: @KEY60228 そろそろ変えたいブラピ様
Click to edit Master title style 3 3 想像してみてください
Click to edit Master title style 4 4 ティーカップ1杯のお茶 (中略)
をノートPCのキーボー ド上にぶちまけてください。(中略) その後、新たな ノートPCを購入し、家に戻ってきてください。その新 しいノートPCを (中略) 同じ状態にまで復元するにはど れだけの時間が必要でしょうか? 『達人プログラマー』 第3章 「基本的なツール」 より
Click to edit Master title style 5 5 もう少しマイルドにしましょう
Click to edit Master title style 6 6 あなたは3年間働いてきた職場を先月退職し、今日から 新しい職場で働くことになりました。技術スタックは
前の職場とほぼ同じなので、使い慣れたエディタ、ア プリケーション、設定などが使えそうです。ただし、 今まで使ってきたPCは既に返却してしまいました。あ なたが使い慣れた環境を作りあげ、最初のチケットに 取りかかるまでどれだけの時間が必要でしょうか?
Click to edit Master title style 7 7 こんな感じになりませんか?
Click to edit Master title style 8 8 「gitの初期設定どうやるんだっけ?」 「Chromeのあの便利な拡張機能、名前なんだっけ…」
「あれ?コマンドの補完効かない…どうやるんだっけ…」 「homebrewのパスどうやって通すんだっけ…」 「Slack入れてZoom入れて…あと何入ってたっけ?」 「VSCodeの拡張機能何入れてたっけ…」 「色々エイリアス設定してたのにまた設定し直しだ…」 「ターミナルにgit branch表示させるのどうやるんだっけ…」 「あれ、キーバインドが効かない…何設定してたっけ…」
Click to edit Master title style 9 9 そんなあなたに
Click to edit Master title style 10 ローカルIaCで即立ち上がり、即開発! 10
Click to edit Master title style 11 そもそもIaCってなんだっけ? 11 Infrastructure
as Codeの略 サーバーやネットワークなどのインフラをコードとして管理 することで、構成の自動化、管理の容易化を狙うもの 最近のクラウド環境からは切っても切れないモノ (主観) [代表的なツール群] Terraform, OpenTofu, Pulumi CloudFormation, Cloud Development Manager Chef, Ansible, Puppet etc.
Click to edit Master title style 12 じゃあローカルIaCって何よ? 12 ローカル環境をコード化してしまうこと
(Local Infrastructure as Code) (造語です) このローカルIaCを整えることで ・何度コーヒーをぶちまけても (やらない方がいいです) ・何度PCがぶっ壊れても (壊れないに越したことはないですよね) ・何度PCを買い換えても (新しいの出ると欲しくなっちゃいますよね) ・何度転職しても (巡り合いとタイミングが肝要です) すぐに今までの環境を立ち上げることが可能になります!!! (※OS依存) (※個人の感想です)
Click to edit Master title style 13 13 じゃあどうやんの?
Click to edit Master title style 14 まずはdotfilesから 14 まずは各種設定ファイルをdotfilesリポジトリに突っ込んでgitでバージョン管理しましょう
・.zshrc / .bashrc など ・.zshprofile / .bash_profile など ・.aliases.zsh / functions.zsh など ・.gitconfig ・.vimrc ・.tmux.conf ・.Brewfile とかとか… まだまだ貧相…
Click to edit Master title style 15 次にIaCツールを選んで設定 15 お次に好きなIaCツールで自動化コードを書いてみましょう
Terraformとかはユースケース合わないのでChefとかAnsibleが良さそう 自分はAnsibleでやってます ・さっき作ったdotfilesのシンボリックリンクを貼る ・homebrewの各種パッケージをinstallする などなど… それくらいならシェルでいいじゃん? いやでもせっかくだしツール触りたいじゃん
Click to edit Master title style 16 最後に初期シェル書いて終了 16 xcode,
homebrew, ansibleをinstallしてリポジトリをcloneするシェルを書いて終了 いよいよシェルでいいじゃん? それはそう
Click to edit Master title style 17 そうして出来たのがこちら 17 mac-ansible
https://github.com/KEY60228/mac-ansible dotfiles https://github.com/KEY60228/dotfiles
Click to edit Master title style 18 実際にやってみた 18
Click to edit Master title style 19 実際にやってみた 19 1時間程度放っておき、気がついたら使い慣れた環境が手元に!
(※PCのスペックによります) (※安定したネットワーク環境が必要です) (※インストールするアプリケーションの量にもよります)
Click to edit Master title style 20 20 ローカルIaC、やってみませんか?
Click to edit Master title style 21 Thank you!