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
770
脱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
630
あの素晴らしい猫の本
mi
0
1.2k
作業効率がアップする アプリ紹介
mi
0
120
git
mi
0
73
Other Decks in Technology
See All in Technology
意志の力が9割。アニメから学ぶAI時代のこれから。
endohizumi
1
110
20250807 Applied Engineer Open House
sakana_ai
PRO
2
680
kintone開発チームの紹介
cybozuinsideout
PRO
0
73k
Android Studio の 新しいAI機能を試してみよう / Try out the new AI features in Android Studio
yanzm
0
170
Backboneとしてのtimm2025
yu4u
3
1.2k
Amazon Inspector コードセキュリティで手軽に実現するシフトレフト
maimyyym
0
150
Infrastructure as Prompt実装記 〜Bedrock AgentCoreで作る自然言語インフラエージェント〜
yusukeshimizu
2
170
モダンな現場と従来型の組織——そこに生じる "不整合" を解消してこそチームがパフォーマンスを発揮できる / Team-oriented Organization Design 20250825
mtx2s
2
210
LLM時代の検索とコンテキストエンジニアリング
shibuiwilliam
2
1k
広島発!スタートアップ開発の裏側
tsankyo
0
140
工業高校で学習したとあるエンジニアのキャリアの話
shirayanagiryuji
0
130
Rethinking Incident Response: Context-Aware AI in Practice - Incident Buddy Edition -
rrreeeyyy
0
130
Featured
See All Featured
Code Review Best Practice
trishagee
70
19k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
6k
Documentation Writing (for coders)
carmenintech
73
5k
Fireside Chat
paigeccino
39
3.6k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
770
Become a Pro
speakerdeck
PRO
29
5.5k
The Cult of Friendly URLs
andyhume
79
6.5k
Raft: Consensus for Rubyists
vanstee
140
7.1k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Automating Front-end Workflow
addyosmani
1370
200k
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
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠