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
脱FTP!一瞬でS3にファイル転送
Search
mi
September 30, 2016
Technology
0
780
脱FTP!一瞬でS3にファイル転送
AWSのS3ストレージにFTPを使用せず、コマンドだけでアップする方法をご紹介します。
mi
September 30, 2016
Tweet
Share
More Decks by mi
See All by mi
Switchbot で人生をチョット豊かに。
mi
0
180
自己紹介
mi
0
360
computed のすゝめ
mi
2
640
あの素晴らしい猫の本
mi
0
1.2k
作業効率がアップする アプリ紹介
mi
0
120
git
mi
0
73
Other Decks in Technology
See All in Technology
Dylib Hijacking on macOS: Dead or Alive?
patrickwardle
0
160
今この時代に技術とどう向き合うべきか
gree_tech
PRO
2
2k
データ戦略部門 紹介資料
sansan33
PRO
1
3.8k
BI ツールはもういらない?Amazon RedShift & MCP Server で試みる新しいデータ分析アプローチ
cdataj
0
170
Introduction to Bill One Development Engineer
sansan33
PRO
0
300
大規模サーバーレスAPIの堅牢性・信頼性設計 〜AWSのベストプラクティスから始まる現実的制約との向き合い方〜
maimyyym
10
4.9k
【Kaigi on Rails 事後勉強会LT】MeはどうしてGirlsに? 私とRubyを繋いだRail(s)
joyfrommasara
0
270
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
12
80k
GoでもGUIアプリを作りたい!
kworkdev
PRO
0
150
Node.js 2025: What's new and what's next
ruyadorno
0
390
Codexとも仲良く。CodeRabbit CLIの紹介
moongift
PRO
1
240
ビズリーチ求職者検索におけるPLMとLLMの活用 / Search Engineering MEET UP_2-1
visional_engineering_and_design
1
140
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
KATA
mclloyd
32
15k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
How to Think Like a Performance Engineer
csswizardry
27
2k
A designer walks into a library…
pauljervisheath
209
24k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.1k
The Cult of Friendly URLs
andyhume
79
6.6k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
Being A Developer After 40
akosma
91
590k
Transcript
̛̩̥ʂ ҰॠͰS3ʹϑΝΠϧసૹ 2016/09/07 (ɾωɾ) @mi
ࣗݾհ ૿ຊɹඒཬ (@_upto_me_) ग़ɿ࡚ݝେଜࢢ ࣄɿՈ۩ (LOWYA / vega.inc) ڵຯ͋Δ͜ͱɿJavaScript, ຑ,
ΘΜ͜
ࠓ͢͜ͱ ϑϩϯτΤϯυͷλεΫϥϯφʔgulpͷ ʮgulp-s3ʯΛ༻͍ͯɺAWSͷS3ʹ 1ίϚϯυͰɺϑΝΠϧΛసૹ͢Δํ๏ɻ 㲈 s3ڥʹҰॠͰσϓϩΠɻ
λεΫϥϯφʔͱʁ
λεΫϥϯφʔ ϑϩϯτΤϯυͷ։ൃʹɺίϯύΠϧ࡞ۀɺϑΝΠϧͷѹ ॖ࡞ۀͳͲɺଟ͘ͷλεΫ͕͋Γ·͢ɻ͜ΕΒΛҰׅͰཧɾ ࣗಈԽͯ͘͠ΕΔͷ͕ʮλεΫϥϯφʔʯͰ͢ɻ - CSSJavaScriptͷѹॖɺ݁߹ - SassͷίϯύΠϧ
None
None
ͦΕ͔ΒͲ͏ͳͬͨʁ
2016/03 Ҏ߱
webpack શউརʂʁ ※ 2016/09/07࣌
ࠓճ…
gulp ( Ψϧϓ ) λεΫϥϯφʔ - Node.js্ʹߏங͞ΕͨϏϧυπʔϧ - ϏϧυखॱΛλεΫͱ͍͏ܗͰࣗΒఆٛ -
ઃఆϑΝΠϧͷΑ͏ͳͷΛ͘γϯϓϧʹॻ͚Δ (※) (※ ൺֱରɿGrunt)
gulp ( Ψϧϓ ) λεΫϥϯφʔ - Node.js্ʹߏங͞ΕͨϏϧυπʔϧ - ϏϧυखॱΛλεΫͱ͍͏ܗͰࣗΒఆٛ -
ઃఆϑΝΠϧͷΑ͏ͳͷΛ͘γϯϓϧʹॻ͚Δ (※) (※ ൺֱରɿGrunt)
None
Node.js ( ϊʔυδΣʔΤε ) JavaScript࣮ߦڥ - αʔόʔαΠυͰJavaScriptΛ࣮ߦͰ͖ΔΑ͏ʹͯ͘͠ΕΔͷ ≒ Server Side
JavaScriptɺNodeڥ - େྔͷσʔλΛߴʹαό͘ɻͭΑ͍ʢ֬৴ʣ
࣮ࡍʹs3̏ඵͰ Ξοϓ͠·͢
Ͳʔͬͯ͢Δͷʁ
ҙࣄ߲ ͜ͷαϯϓϧͰϓϩδΣΫτϑΥϧμʹ ʮviewsʯͱ͍͏ެ։༻ϑΥϧμ͕ଘࡏ͠·͢ɻ ͍·͔Βߦ͏࡞ۀɺʮviewsʯϑΥϧμͷதΛ·Δͬͱ s3ʹసૹ͢Δํ๏Λ͝આ໌͠·͢ɻ ಉ͡Α͏ʹ࡞ۀ͍ͨ͠ํɺϓϩδΣΫτϑΥϧμʹ ৽͘͠ެ։༻ϑΥϧμʮviewsʯΛ࡞ͯ͠ɺ ͦ͜ʹhtmlϑΝΠϧΛͭͬ͜ΜͰ͓͍͍ͯͩ͘͞ɻ
खॱ 1. Node.jsΛΠϯετʔϧ 2. GulpΛΠϯετʔϧ 3. ύοέʔδͷΠϯετʔϧ 4. Gulpfile.jsͱaws.json(ઃఆϑΝΠϧΈ͍ͨͳͷ) ࡞
5. ίϚϯυ͏ͭʂ → S3ʹసૹྃ 1ɺ2ɺ3ɺ4࠷ॳͷΈඞཁɻS3ʹϑΝΠϧΛ͋͛Δૢ࡞5
Node.jsΛΠϯετʔϧ
https://nodejs.org/en/download/
Node.jsͷΠϯετʔϧ֬ೝ Πϯετʔϧ͕ऴΘͬͨΒλʔϛφϧίϚϯυϓϩϯϓτͰ ʰ node -v ʱͱଧͬͯΈ͍ͯͩ͘͞ɻόʔδϣϯใ͕֬ೝͰ͖ΕOKʂ
GulpͷΠϯετʔϧ ※ άϩʔόϧΠϯετʔϧͦͷϚγϯ্ͷͲ͔͜ΒͰ ར༻Ͱ͖ΔΑ͏Πϯετʔϧ͢Δ͜ͱɻ ※ ϩʔΧϧΠϯετʔϧͦͷϓϩδΣΫτͷ ϑΥϧμͰͷΈར༻Ͱ͖ΔΑ͏Πϯετʔϧ͢Δ͜ͱɻ
GulpͷάϩʔόϧΠϯετʔϧ λʔϛφϧίϚϯυϓϩϯϓτͰԼهίϚϯυ࣮ߦ npm install -g gulp
GulpͷΠϯετʔϧ֬ೝ λʔϛφϧίϚϯυϓϩϯϓτͰԼهίϚϯυ࣮ߦ gulp -v CLI όʔδϣϯ͕දࣔ͞ΕΕOK
ϓϩδΣΫτϑΥϧμʹ ύοέʔδΛΠϯετʔϧ͢Δ λʔϛφϧίϚϯυϓϩϯϓτͰԼهίϚϯυ࣮ߦ cd ϓϩδΣΫτϑΥϧμͷύε npm init nam install —save-dev
gulp gulp-s3 ➔ ͍Ζ͍ΖӳޠͰ࣭͞Ε·͕͢ɺશͯΤϯλʔͰOK
ϓϩδΣΫτϑΥϧμΛ֬ೝ͢Δͱɺ - node_modules [ϑΥϧμ] - package.json [ϑΝΠϧ] ্هͷ2͕ͭग़དྷ͍ͯΔͱࢥ͍·͢ɻ ಉ֊ʹҎԼ2ͭϑΝΠϧΛ࡞͍ͯͩ͘͠͞ɻ
- gulpfile.js - aws.json ඞཁϑΝΠϧͷՃ
aws.json keyɿΞΫηεΩʔ ID secretɿγʔΫϨοτΞΫηεΩʔ bucketɿαΠτͷURI regionɿap-northeast-1
aws.json *".Ϣʔβʔʢ͕ࣗ࡞ͨ͠ΞΧϯτ໊ʣ
gulpfile.js
ίϚϯυଧͬͯΈΑ͏ʙʂ”
λʔϛφϧίϚϯυϓϩϯϓτͰԼهίϚϯυ࣮ߦ gulp deploy
None
None
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠