Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
脱FTP!一瞬でS3にファイル転送
Search
mi
September 30, 2016
Technology
810
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
脱FTP!一瞬でS3にファイル転送
AWSのS3ストレージにFTPを使用せず、コマンドだけでアップする方法をご紹介します。
mi
September 30, 2016
More Decks by mi
See All by mi
Switchbot で人生をチョット豊かに。
mi
0
200
自己紹介
mi
0
370
computed のすゝめ
mi
2
690
あの素晴らしい猫の本
mi
0
1.2k
作業効率がアップする アプリ紹介
mi
0
140
git
mi
0
78
Other Decks in Technology
See All in Technology
越境するなら専門用語を使うな高校校歌 / If you wanna cross border, you shouldn't use jargon
vtryo
0
130
DEFCON34-Write-up_HYCu-MYCu
daikiokazaki
0
160
山手線を徒歩で一周してわかった、 位置情報アプリは「足」が最強のデバッガー
hinakko
0
150
アプリログインとWeb認証基盤をつなぐ ASWebAuthenticationSession 作法
shimastripe
1
310
TinyGo 開発サイクルを高速化する:Go で作るエミュレータ入門
zozotech
PRO
1
720
Podは生きているのにGoだけが落ちる:GOGCとGOMEMLIMITで追うInvisible OOM Killの謎
tkc66buzz
1
710
synctest時代のhttptest Go 1.27で変わるHTTPサーバテストの裏側 / go conference2026 synctest and httptest
budougumi0617
1
2.8k
新機種発売前に見直そう!端末移行で再ログインが要るアプリ・要らないアプリは何が違うのか 〜シームレスに再開できる設計と実装〜
zozotech
PRO
0
170
データ界隈LT祭 第1回LT登壇
taromatsui_cccmkhd
1
1.3k
コスト最適化の「めんどくさい」を AWS FinOps Agent でチョット楽にする
classmethod_kaz
0
340
Genieを崇めよ
kameitomohiro
0
120
Claude in Chrome 入門 / Introduction to Claude in Chrome
cielo1985
0
740
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
330
The agentic SEO stack - context over prompts
schlessera
0
930
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
480
Leo the Paperboy
mayatellez
9
2.3k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
450
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
450
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.9k
A designer walks into a library…
pauljervisheath
211
25k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Statistics for Hackers
jakevdp
799
230k
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
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠