$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
The meaning of using Packer
Search
linyows
July 04, 2015
Programming
1
3.3k
The meaning of using Packer
linyows
July 04, 2015
Tweet
Share
More Decks by linyows
See All by linyows
Protocol Buffersの型を超えて拡張性を得る / Beyond Protocol Buffers Types Achieving Extensibility
linyows
0
160
研究開発と実装OSSと プロダクトの好循環 / A virtuous cycle of research and development implementation OSS and products
linyows
1
720
コードジェネレーターで 効率的な開発をする / Efficient development with code generators
linyows
0
370
研究を支える拡張性の高い ワークフローツールの提案 / Proposal of highly expandable workflow tools to support research
linyows
0
540
非コンテナ環境において宣言的Deploymentを手軽に実現する / Declarative deployment in non-container environments
linyows
1
380
メール送信サーバの集約における透過型SMTP プロキシの定量評価 / Quantitative Evaluation of Transparent SMTP Proxy in Email Sending Server Aggregation
linyows
0
1.1k
透過型SMTPプロキシによる送信メールの可観測性向上: Update Edition / Improved observability of outgoing emails with transparent smtp proxy: Update edition
linyows
2
560
研究の再現性を高める 仕組みをGoでつくる / Creating a system to improve the reproducibility of research using go
linyows
1
300
奥が深いメールのシステム / The depth of Email system
linyows
4
710
Other Decks in Programming
See All in Programming
関数実行の裏側では何が起きているのか?
minop1205
1
660
愛される翻訳の秘訣
kishikawakatsumi
1
280
ViewファーストなRailsアプリ開発のたのしさ
sugiwe
0
420
関数の挙動書き換える
takatofukui
4
770
tsgolintはいかにしてtypescript-goの非公開APIを呼び出しているのか
syumai
5
1.9k
大体よく分かるscala.collection.immutable.HashMap ~ Compressed Hash-Array Mapped Prefix-tree (CHAMP) ~
matsu_chara
1
210
20251127_ぼっちのための懇親会対策会議
kokamoto01_metaps
2
420
AWS CDKの推しポイントN選
akihisaikeda
1
240
TypeScript 5.9 で使えるようになった import defer でパフォーマンス最適化を実現する
bicstone
1
1.2k
社内オペレーション改善のためのTypeScript / TSKaigi Hokuriku 2025
dachi023
1
540
How Software Deployment tools have changed in the past 20 years
geshan
0
28k
Navigation 3: 적응형 UI를 위한 앱 탐색
fornewid
1
190
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
How to train your dragon (web standard)
notwaldorf
97
6.4k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Context Engineering - Making Every Token Count
addyosmani
9
480
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
RailsConf 2023
tenderlove
30
1.3k
Music & Morning Musume
bryan
46
7k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Done Done
chrislema
186
16k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
1k
Transcript
ύΧοͱαʔό !MJOZPXT QFQBCPUFDIDPO
͜Μʹͪ 1BDLFS৬ਓͰ͢ 5PNPIJTB0EB!MJOZPXT
None
։ൃڥͲ͏͍ͯ͠·͔͢ʁ
None
+
ຊ൪ͱ։ൃڥ͕ҟͳΔ
ຊ൪ڥΛςετ͍ͨ͠
ࠓ͋Δ1VQQFUࢿ࢈Ͱ %PDLFSίϯςφ࡞Γ͍ͨ
ΠϝʔδΛ͔̍Β࡞Γ͍ͨΜʂʂʂ̍
https://packer.io/
ϚγϯΠϝʔδ࡞ΛࣗಈԽ͢Δͷ
“Packer is a tool for creating machine and container images
for multiple platforms from a single source configuration.
packer-template.json Amazon EC2 Virtualbox Docker Openstack QEMUʢKVM Xenʣ
"840QFO4UBDL
via Provisioning Toolchain / Lee Thompson
CPPUTUSBQͱDPOpHVSBUJPOͷ ྆ํͷ໘Λݟͯ͘ΕΔ
w "84&$BNJ w %JHJUBM0DFBO w %PDLFS w (PPHMF$PNQVUF &OHJOF w
0QFO4UBDL w 1BSBMMFMT w 2&.6 ,7.9FO w 7JSUVBM#PY w 7.8BSF
{ "builders": [ { "type": "amazon-ebs", "access_key": "...", "secret_key": "...",
"region": "us-east-1", "source_ami": "ami-de0d9eb7", "instance_type": "t1.micro", "ssh_username": "ubuntu", "ami_name": "packer {{timestamp}}" } ], "provisioners": [ { "type": "shell", "script": "setup_things.sh" } ] } packer-template.json
࡞ͬͨΠϝʔδͷςετ w QSPWJTJPOʹTFSWFSTQFDͷςετΛೖΕ͓ͯ͘ w ࠷ޙʹͦͷςετΛྲྀ͢ w ςετ͕௨ͬͨΒςετؔ࿈ͷϑΝΠϧআͯ͠͠·͏
࡞ͬͨΠϝʔδʹରͯ͠Կ͔Λߦ͍͍ͨ w QMVHJOΛॻ͘ w QBDLFSQPTUQSPDFTTPSTIFMMΛ͏
ඍົͳͱ͜Ζ EPDLFSͷΑ͏ʹ్தͷόʔδϣϯ͕ Βͳ͍ͷͰ ϏϧυΓ͠ʹ͕͔͔࣌ؒΔʂʂʂʂ
Πϯετʔϧதɺ ਐ͕ετοϓ͢Δ
!
ΠϯετʔϧɾϓϩϏδϣχϯά ͕͔͔࣌ؒΔ
IUUQTHJUIVCDPN SPTZMJMMZQQSPDFTT͕ศར
·ͱΊ w Թ͔Έͷ͋Δ࡞ۀ͕ෆཁʹͳΔ w ϚγϯΠϝʔδ࡞ΛҰݩཧ͢Δ͜ͱͰָͰ͖Δ w όʔδϣϯཧͰ͖Δ w ϓϥοτϑΥʔϜ͕ҧͬͯΠϯελϯε͕΄΅ಉҰͰ͋Δ͜ͱΛ ୲อͰ͖Δ
ઌϦϦʔε͞ΕͨW w 8JOEPXT".* w 0QFO4UBDLW w 'JMFQSPWJTJPOFSʹEPXOMPBEΦϓγϣϯ
͓ΘΓ