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
コンテナに挫折したあなたへ / A Letter to Uncontainerized Apps
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Tori Hara
PRO
March 11, 2017
Technology
9.6k
23
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
コンテナに挫折したあなたへ / A Letter to Uncontainerized Apps
おコンテナが自分たちのアプリやワークフロー、運用にフィットしないのはなんでなのか?
Presented at JAWS DAYS 2017.
Tori Hara
PRO
March 11, 2017
More Decks by Tori Hara
See All by Tori Hara
カミナシでの技術的負債返済プロジェクトとその決断 / Beyond tech debts at Kaminashi
toricls
PRO
47
26k
アプリケーション開発者は Amazon ECS あるいは Kubernetes をどこまで知るべきか #AWSDevDay / You build it, you run it
toricls
PRO
57
24k
永続複数ブランチ運用は『単一のコードベース』と言えるのか / What are your justifications for the multi-branches?
toricls
PRO
17
6.6k
緩やかに死んでいくシステム / You won't be in the team forever
toricls
PRO
23
15k
技術的負債とステークホルダと説明責任と / The Debt
toricls
PRO
77
37k
Securing your Amazon ECS applications: Best practices
toricls
PRO
0
960
第2回 AWS Fargate かんたんデプロイ選手権 #AWSDevDay / The Easiest Deployment Championship 2020 - Find your winner for AWS Fargate!
toricls
PRO
18
24k
独りよがりのプラットフォーム / For Whom that Platform Runs
toricls
PRO
100
36k
Containers + EC2 Spot: 特性と実装パターンに学ぶ低コスト & 高可用アーキテクチャ / Practical Guide for Amazon EC2 Spot with Containers
toricls
PRO
13
5.4k
Other Decks in Technology
See All in Technology
Snowflakeで実現する全社横断の顧客の声(VOC)分析・活用基盤@Snowflake World Tour Tokyo 2026
yuto16
0
170
ペアプロの価値はコードを書くことだけじゃない
codmoninc
PRO
0
170
DEFCON34-Write-up_HYCu-MYCu
daikiokazaki
0
150
AIオーケストレーションを活用した 開発ワークフローの設計と実践
bqnq
0
130
Microsoft 365 Copilot chat -tekoälypalvelun tietosuojaongelmat
hponka
0
660
AI時代のAPI品質を支えるガードレール / API Guardrails for API quality in the AI era
yokawasa
1
210
Deploying a Full-Stack Bun-Native Framework on Cloudflare Workers
7nohe
0
130
module Synths; end
asonas
1
130
AIで実装は速くなった。なのにプロダクトは速くならない。職能の壁を越えて価値のフローを設計する
nwiizo
8
7.8k
omasushiというライブラリを作った
polidog
PRO
0
200
幾何アルゴリズムで なめらかなピン操作を / iOSDC Japan 2026 / smoothpin
kazumanagano
0
260
コスト最適化の「めんどくさい」を AWS FinOps Agent でチョット楽にする
classmethod_kaz
0
300
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
WENDY [Excerpt]
tessaabrams
13
39k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
240
Exploring anti-patterns in Rails
aemeredith
3
500
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
510
Building Applications with DynamoDB
mza
96
7.2k
How to Talk to Developers About Accessibility
jct
2
540
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.6k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
430
Transcript
SUPINF Inc. // twitter.com/toricls ǗȗǪǮƘ؟ƄƌůƗƌƥ Yasuhiro HARA Mar 11, 2017
SUPINF Inc. // twitter.com/toricls AGENDA ▶︎ DockerǗȗǪǮ ▶︎ ɛƜƗƉǗȗǪǮƘ؟ƆƸƛŸ ▶︎
؟ƄƗűƌƮƘ
SUPINF Inc. // twitter.com/toricls ۙڒƛǘȜȏ ůźƶƮƗűƔ
SUPINF Inc. // twitter.com/toricls Docker ƛƀƕƿ֒ű̌ƄƫƄƴų
SUPINF Inc. // twitter.com/toricls Docker୦ŵƓƫƆŸ ǗȗǪǮƕVMƛű https://www.docker.com/what-container
SUPINF Inc. // twitter.com/toricls Docker୦ŵƓƫƆŸ ǗȗǪǮonAWS https://www.docker.com/what-container } { EC2
{ Docker Τϯδϯ { Docker ίϯςφ
SUPINF Inc. // twitter.com/toricls $ ps aux USER PID ...
COMMAND root 3123 ... /agent root 16293 ... puma 3.6.0 (tcp://0.0.0.0:80) [app] ... Docker୦ŵƓƫƆŸ ǗȗǪǮƛȱƕу $ docker ps CONTAINER ID IMAGE COMMAND ... 533c36714f42 my-rails-app:latest "bundle exec rails s ..." ... 5d48c82b7faa amazon/amazon-ecs-agent:latest "/agent" ... # ps aux USER PID ... COMMAND root 1 ... puma 3.6.0 (tcp://0.0.0.0:80) [app] root 18 ... sh ... Docker Container Docker Engine Host OS $ ps aux USER PID ... COMMAND root 3123 ... /agent root 16293 ... puma 3.6.0 (tcp://0.0.0.0:80) [app] ... $ docker ps CONTAINER ID IMAGE COMMAND ... 533c36714f42 my-rails-app:latest "bundle exec rails s ..." ... 5d48c82b7faa amazon/amazon-ecs-agent:latest "/agent" ... # ps aux USER PID ... COMMAND root 1 ... puma 3.6.0 (tcp://0.0.0.0:80) [app] root 18 ... sh ... Docker Container Docker Engine Host OS
SUPINF Inc. // twitter.com/toricls AMI (Amazon ϚγϯΠϝʔδ) Amazon EC2 Πϯελϯε
RUN Docker୦ŵƓƫƆŸ ţLjȅȜǜŤƕţǗȗǪǮŤ RUN Ɨ Docker LjȅȜǜ Docker ǗȗǪǮ
SUPINF Inc. // twitter.com/toricls Docker୦ŵƓƫƆŸ ǗȗǪǮƿ̿ŸƆ Docker Hub / Docker
Registry $ docker pull nginx:latest Ɨ $ docker run nginx:latest
SUPINF Inc. // twitter.com/toricls $ cat Dockerfile $ cat Dockerfile
FROM ubuntu:16.04 RUN \ apt-get update && \ apt-get install -y nginx EXPOSE 80 CMD ["nginx", "-g", "daemon off;"] Docker୦ŵƓƫƆŸ LjȅȜǜƿʊƸ $ cat Dockerfile FROM ubuntu:16.04 RUN \ apt-get update && \ apt-get install -y nginx EXPOSE 80 CMD ["nginx", "-g", "daemon off;"] $ docker build -t my-awesome-nginx . ... ... $ cat Dockerfile FROM ubuntu:16.04 RUN \ apt-get update && \ apt-get install -y nginx EXPOSE 80 CMD ["nginx", "-g", "daemon off;"] $ docker build -t my-awesome-nginx . ... ... $ docker run -p 80:80 my-awesome-nginx ...
SUPINF Inc. // twitter.com/toricls Docker୦ŵƓƫƆŸ DOCKER ƿʎųࢪࣇ ▶︎ ǪǝǬƄƌdžȜǪLJǹDžǓǬƿƊƛƫƫǫǻȑLjƔźƸȁȜǣǷȎǪLJ ▶︎
džǻȎҩࢷЭƛҥ"MAICPDGJC ŹǴȜǜȋȗভࢪƔźƸǬȐȜǙǷȎǪLJ ▶︎ ɤƛǻȑǟǝŸƶ൭ԽƘആƂƹƌҩࢷЭ ▶︎ LjȅȜǜ˪ۍƛহʛ֕ ▶︎ ӒƗűǎȜǴȜǼǧǭƔ൭ఽƘdžǻȎǕȜǛȋȗƿ௲̿ƔźƸʟ٭֕ ▶︎ ऩܵҴڠ֕ ▶︎ ൭ఽƗǫȎǴȎȜǙLjǓȏƥƛ୨θ֕
SUPINF Inc. // twitter.com/toricls Docker୦ŵƓƫƆŸ DOCKER ƿʎųࢪࣇʐŵƝҜ˦ƘƀǀƗƀƕŹ Ruby 2.1
App Ruby 2.3 App Java 8 App EC2 Host Java 7 App
SUPINF Inc. // twitter.com/toricls "Build, Ship, and Run Any App,
Anywhere" https://www.docker.com Docker୦ŵƓƫƆŸ DOCKER ƛௐ́
SUPINF Inc. // twitter.com/toricls ɛƜƗƉǗȗǪǮƘ؟ƆƸƛŸ
SUPINF Inc. // twitter.com/toricls ƗƉǗȗǪǮӐ˥Ƙ؟ƆƸƛŸ "ƗǀŸǗȗǪǮųƎƘƜǹLJǧǬƄƗűƵƚ"
SUPINF Inc. // twitter.com/toricls ǹLJǧǬƄƗűׂƅŹƆƸͳϮƜʈƗƛŸ ȆǤȗƗdžǻȎǕȜǛȋȗ್ࣲƛ ǽǝǬǻȍǓǪLJǝƘ߁ƐƓűƗű Web
SUPINF Inc. // twitter.com/toricls
SUPINF Inc. // twitter.com/toricls ▶︎ ǟǧǬdžǧǻઈ͎̿ƛƌƮƘҫ୭ࣶƗǹǍȜȂǧǬƿʎűřǻȑǜNjǓǬƘډƄż̲ƼƐƌ್ࣲ ਾŹୟƆƸڪƕǗǝǬŹۋӑ͎ƂƹƓűƸ ▶︎ -1ƥƛʓґʜƿڞऺ͎ƄřҩࢷЭƔƛ१݁֕ƿۋш͎ƂƹƓűƸ ▶︎
ȆǤȗƗǓȍNJǭǻȍǧǬǹǍȜȄȥƥƛǫǻȑLjƘౖƄƓŷƷřǙȜǴȜভࢪƱǛǝǪȄভࢪ ŹȧୟƔůƸ ▶︎ ್ࣲࢷЭƕۙࣘࢷЭƛԎࣙƿۋӑೠƘƄřdžǜȎǪLJƿۋш͎ƆƸ৻ৼࣶǫǻȑLjŹΏ੧ ▶︎ ǨȜȏřdžȜǑǪǓǥȇř್ࣲǻȍǓǪLJǝƿшԤƘрۅƆƸƀƕƗżǝǕȜȏdžǧǻƔźƸ 12-Factor AppƘŷžƸ"ટű"džǻȎǕȜǛȋȗƛҥ https://12factor.net/ja see also https://www.slideshare.net/AmazonWebServicesJapan/aws-black-belt-online-seminar-2017-docker-on-aws
SUPINF Inc. // twitter.com/toricls ƔřƖųƆƹƝűűƛŸ ǥȜȄʇ̛ƕǫȎǴȎȜ džǻȎǕȜǛȋȗ ోࣄ Ljȗǹȍݙ ƿڞऺƘƄřʈŹݸžƓűƸƛŸƿƜƐźƷƂƈƸ
ǗȗǪǮƘ ౖƄƌ
SUPINF Inc. // twitter.com/toricls ƔřƖųƆƹƝűűƛŸ ǥȜȄʇ̛ƕǫȎǴȎȜ džǻȎǕȜǛȋȗ ోࣄ Ljȗǹȍݙ ƿڞऺƘƄřʈŹݸžƓűƸƛŸƿƜƐźƷƂƈƸ
ǗȗǪǮƘ ౖƄƌ džǻȎઈʇƛƱోࣄƘƑűƓƜ ̫ƕ12-Factor AppƔڞƂƹƓűƸƛƔ ɟڒƜȵƘǫȎǴȎȜƕLjȗǹȍƛƿƄƫƆ
SUPINF Inc. // twitter.com/toricls ǗȗǪǮڪɨƛǫȎǴȎȜȆǫȏ
SUPINF Inc. // twitter.com/toricls ǗȗǪǮŹࣳМƆƸ̣ƛǫȎǴȎȜȆǫȏ ҩࢷЭ ǷȏǭնƛdžȜǪLJǹDžǓǬƛভࢪƱ ҩƛǫǻȑLj̅ࢪŹ džǻȎǕȜǛȋȗƁƕƘʊƷఢƫƹƓűƸƀƕŹхżř ţȆǫȏŤ͎ƂƹƌƯƛŹůƫƷƗűࢃׄ
ţǫǻȑLjƜۙࣘࢷЭƔgit pullʂʯΈ͍ͨͳਓ ͍ͨΓͯ͠ɺ ׂͱΜͪΌͯ͠Δײ͡
SUPINF Inc. // twitter.com/toricls ǗȗǪǮڪɨƛǫȎǴȎȜȆǫȏ Registry ǗȗǪǮভࢪǨȜȏ ҩࢷЭ džȜǪLJǹDžǓǬਧźМƛȐǜǝǬȎř
ǗȗǪǮƛҩƿভࢪƆƸǨȜȏŹࣳМƄř ǫǻȑLjƱȎȎȜǝƛȫ࣍Ƙţ˪୭கȆǫȏŤŹ ࣁƫƹƌ
SUPINF Inc. // twitter.com/toricls ǗȗǪǮڪɨƛǫȎǴȎȜȆǫȏ ݔୟ Registry 1. build 2.
ship 2. ship 3. run Docker LjȅȜǜ ҥƘ߁Ɛƌ ҩƿؙु "ҩҥ" ǗȗǪǮভࢪǨȜȏ ҩࢷЭ
SUPINF Inc. // twitter.com/toricls ǗȗǪǮڪɨƛǫȎǴȎȜȆǫȏ ҩҥ Registry 2. ship "ҩҥ"
ǗȗǪǮভࢪǨȜȏ ҩࢷЭ ƀƹƗǀƋ
SUPINF Inc. // twitter.com/toricls ǗȗǪǮڪɨƛǫȎǴȎȜȆǫȏ ҩҥ ▶︎ ௰ƶƈƌű"MAICPLjȅȜǜ ▶︎ ऺʡƄƌű!.3ȅȆȎʎࣄಊ
▶︎ ࢷЭрٵƘƵƸdžǻȎǕȜǛȋȗƛҥʱ ▶︎ ȂNJȗǬƆƸǫLJȐǓǬȎ ▶︎ ˨್ƆƸȁȜǬ ▶︎ ǗȗǪǮƛȱƔ௰ƶƈƸǻȑǟǝƛҩǗȂȗǭřƗƖƗƖ ƖǀƗǗȗǪǮভࢪǨȜȏƿ ʎƐƓƯƨƩΝƅ ƀƛҥƕDockerLjȅȜǜŹ ůƹƝҞ˦ƘΝƅǗȗǪǮƿʈԽƔƯ ௲̿ƔźƸ
SUPINF Inc. // twitter.com/toricls ǗȗǪǮڪɨƛǫȎǴȎȜȆǫȏ ǗȗǪǮভࢪǨȜȏਯƛǫǻȑLjȆǫȏ Docker njȗǜȗ ΤʔδΣϯτత Կ͔
ȊȜǚȜŸƶƛ APIǗȜȏƿ žɥžƸ ȂDZȜǜȇȜࣶƗʈŸ 1. "࣮ߦఆٛ"Λ࣮ߦʂ 3. ࢲͳʹ͔ࣄ͋Γ·͢ʁ 2. ʔ͍ͬͯͯͶ 4. ͜ͷ࣮ߦఆٛΑΖ͘͠ 5. ͜ͷΠϝʔδ͖࣋ͬͯͯ 6. docker pull 7. ͜Μͳײ͡Ͱ run ͯ͠ 8. runʂ ǿǝǬ Q. Ͳ͏Αʁ 9. ΦοέʔͰ͢ A. ॲཧதͰ͢ʔ 10. Ͳ͏Αʁ 11. ͬͯ·ʔ͢ 0. "࣮ߦఆٛ"Λొʂ
SUPINF Inc. // twitter.com/toricls ǗȗǪǮڪɨƛLjȗǹȍȆǫȏ
SUPINF Inc. // twitter.com/toricls ǗȗǪǮŹࣳМƆƸ̣ƛLjȗǹȍȆǫȏ Java App A Java App
B Rails App A Nginx Name: Java A Name: Java B Name: Rails A ϗετ
SUPINF Inc. // twitter.com/toricls ǗȗǪǮŹࣳМƆƸ̣ƛLjȗǹȍȆǫȏ Java App A Java App
B Rails App A Nginx Name: Java A Name: Java B Name: Rails A Auto-Scaled :D Rails App A Nginx Name: Rails A ϗετ
SUPINF Inc. // twitter.com/toricls ǗȗǪǮڪɨƛLjȗǹȍȆǫȏ Rails App A Nginx Java
App A Java App B Name: Instance Name: Instance ϗετ
SUPINF Inc. // twitter.com/toricls ǗȗǪǮڪɨƛLjȗǹȍȆǫȏ Rails App A Nginx Auto-Scaled
:D Rails App A Nginx Java App A Java App B Name: Instance Name: Instance ϗετ
SUPINF Inc. // twitter.com/toricls ϗετ ǗȗǪǮڪɨƛLjȗǹȍȆǫȏ Rails App A Nginx
Rails App A Nginx Java App A Name: Instance Name: Instance Out of Memory :x
SUPINF Inc. // twitter.com/toricls ϗετ Restarted :D ǗȗǪǮڪɨƛLjȗǹȍȆǫȏ Rails App
A Nginx Rails App A Nginx Java App A Java App B Name: Instance Name: Instance
SUPINF Inc. // twitter.com/toricls ǗȗǪǮڪɨƛLjȗǹȍȆǫȏ ǓȍǝǣȜ Cluster-Name: Some Project ෳͷϗετͷू߹
SUPINF Inc. // twitter.com/toricls ǗȗǪǮڪɨƛLjȗǹȍȆǫȏ ǓȍǝǣȜ Cluster-Name: Some Project ෳͷϗετͷू߹
Auto-Scaled :D Auto-Scaled :D
SUPINF Inc. // twitter.com/toricls ǗȗǪǮڪɨƛLjȗǹȍȆǫȏ ǓȍǝǣȜ Cluster-Name: Some Project ෳͷϗετͷू߹
New Service :D
SUPINF Inc. // twitter.com/toricls ǗȗǪǮڪɨƛLjȗǹȍȆǫȏ ǓȍǝǣȜ Cluster-Name: Some Project ෳͷϗετͷू߹
SUPINF Inc. // twitter.com/toricls ǗȗǪǮڪɨƛLjȗǹȍȆǫȏ ǓȍǝǣȜ Cluster-Name: Some Project ෳͷϗετͷू߹
New Service :D
SUPINF Inc. // twitter.com/toricls ǗȗǪǮڪɨƛLjȗǹȍȆǫȏ ǓȍǝǣȜ Cluster-Name: Some Project ෳͷϗετͷू߹
New Service :D ǓȍǝǣȜ˦ʇƛ ȎǡȜǝɆ࢜Ź ƿ௳ŵƌඵ
SUPINF Inc. // twitter.com/toricls ǗȗǪǮڪɨƛLjȗǹȍȆǫȏ ǓȍǝǣȜ Cluster-Name: Some Project ෳͷϗετͷू߹
New Instance :D
SUPINF Inc. // twitter.com/toricls ǗȗǪǮڪɨƛLjȗǹȍȆǫȏ ǓȍǝǣȜ Cluster-Name: Some Project ෳͷϗετͷू߹
New Service :D
SUPINF Inc. // twitter.com/toricls ǗȗǪǮڪɨƛLjȗǹȍȆǫȏ ǓȍǝǣȜ Cluster-Name: Some Project ෳͷϗετͷू߹
ҩҥƔǗȗǪǮŹքୟƗCPUƱȅȆȎƿ ڞुƆƸƀƕƘƵƷř ţɆ࢜ŤƕűųȅǬȎǓǝƔ ȎǡȜǝƛǝǕȜȎȗǔŹΏ੧ƘƗƐƌ
SUPINF Inc. // twitter.com/toricls Questions?
SUPINF Inc. // twitter.com/toricls ڪŹʉƐƌƶৼźƛȅȆۆźƔƆ
SUPINF Inc. // twitter.com/toricls ǥȜȄʇ̛ǫȎǴȎȜ ▶︎ ǻȑǜNjǓǬƘډƄż̲ƼƐƌ್ࣲਾŹୟƆƸڪƕǗǝǬƿۋӑ͎ƆƸ ▶︎ ȑȜǏȏ್ࣲࢷЭƛݙŹҞ˦ƘƯƄżƜřƨƩ ઈ͎̿ƂƹƓűƸ
▶︎ ൰ƛƵųƘűഭۆƿȃǝƗżҩƄƗűƕ̿ŸƗűdžǻȎǕȜǛȋȗƜřшƛМΙʓґȍLjǺȍȎƱȃǭȏNJNjdžƛۅډŹǥȜȄȅȗ ǴȜŸƶօƂƹřƖǀƖǀ೨ੳ͎ƄƓűż ▶︎ ৻ৼࣶǫǻȑLjٵ̐řٵڪͣʂƔƛǫǻȑLj ƿŵƸʇ̛ƘƆƸ ▶︎ ৻ৼࣶƘǫǻȑLjƿųƌƮƘƜřǫǻȑLjŹઈ͎̿ƂƹƓűƸƀƕƕřǫǻȑLjƘύ഻ŹůƐƌƕźƘҜփƄƓשƈƸƀƕŹಈୟ ▶︎ ǗȜǭƿۆűƌۙɛŹۙࣘࢷЭƛǫǻȑLjƫƔ߲żƼƸ ▶︎ ǗȗǪǮƛ൭űȁȜǣǷȎǪLJƿࣁŸƆƕřքࡔࣶƘǗȜǭǽȜǝƥƛǥNjǧǓLjȗŸƶǫǻȑLjƫƔƛڪŹटਘƂƹƸ ▶︎ ್ࣲࢷЭƛǗȗǪǮŹƊƛƫƫۙࣘƔ̿żƄřƊųƗƸƵųƘdžǻȎǕȜǛȋȗƿʊƐƓűƸƜƇƗƛƔ ▶︎ LjȗǹȍnjȗǜǯdžƜǫǻȑLjƊƹઈʇƿ؇զƆƸƛƔƜƗżřʢഺ֕൭żઈ͎̿ƂƹƌǫǻȑLjڊ߆ƛݙƘӊ֍ƆƸƦź ▶︎ ǫǻȑLjŹэٯƄƌƕźřрƗƯƛƿǫǻȑLjƄƓƄƫƐƌƕźƘƘƖųƱƐƓȎǴȜǬƆƸŸƕŸdžǻȎǕȜǛȋȗnjȗǜǯdžƕ͡ ̰ƄƓટűǵLjǻȍLjȗƿʊƸ ▶︎ űű"MAICPLjȅȜǜƛʊƷڊƿȟਊƘŵƓůſƓƯűűŸƯřLjȅȜǜʊƐƎưƐƓƯűűŸƯ ▶︎ Ɩƹƍž̵̰ƄƓƯύ഻ƜքƇ௲źƸ"ύ഻ƿ௲ƀƂƗűƌƮƛǥNjǧǓʇ̛ƱȏȜȏƿքୟɪȥƘƁƎưƁƎưƱƸ"ƀƕƵƷƯř"ύ഻Ź ࣲࣁƄƌƕźƘۋटƛȎȜǭǣLjȄƔʤބࡱƛdžǻȎǕȜǛȋȗƿǫǻȑLjƔźƸ"ƀƕƛڊŹٵ˒ʫಈୟƔƜƗŸƺųŸƕ
SUPINF Inc. // twitter.com/toricls ǥȜȄʇ̛ǫȎǴȎȜ ▶︎ ǷȏǭřȎȎȜǝřҩŹڞऺƘ̐ആƂƹƌǝǪȜǜƕƄƓ̿ż ▶︎ " ȂLjǔȐȜǛȋȗƜҩǹNjȜǞƔƜƗżȎȎȜǝƕҩƛƘґϺƆƸǝǪȜǜƕؤŵƸƦź
SUPINF Inc. // twitter.com/toricls ▶︎ ǗȜǭǽȜǝŹǴȜǜȋȗভࢪǛǝǪȄƛভࢪȦƘůƸ ▶︎ ȑǔƜݢࠑ̰̌ƘΡż ▶︎ džǻȎǕȜǛȋȗƛ̿рۅƜͳ̡ƕƄƓࢷЭрٵƔࠀƆ
▶︎ ǫǻȑLj˝ƛࢷЭƘʓґƄƌҥʱƕǫǻȑLjƛǗȗǪǑǝǬƿΝƅ"ҥ"ƕƄƓভࢪƆƸƕնƔǶLjLJƐƓƗƸ ▶︎ CE0?GJQƛҥǹDžLjȏƔűųƕƀƺƛ"ۙࣘƍƐƌƶƀƛǫȜǣǽȜǝ"ƛۆźڊƜࡽҥƛǛȜȗƔƑƶżƗƸƪƵ ▶︎ ǴǧǓnjȗǭǙȜǷǝʓґǙȜǷǝř" ƕŸǑȇǧǛȉǝǬȐȜǜƕŸ ƿҴڠƘ̑ƷۊŵƶƹƸƵųƘҩƂƹƓűƸ ▶︎ ۙࣘ" عৼ˝ƿрŵƵųƕƄƌڪƘǷȏǭŸƶƱƷइƆƛƜƐƓűƸ ▶︎ Ԣƛ0?GJQƛҥǹDžLjȏƛŷʊ߆Ƙչųƕř" عৼ˝рۅƛƌƮƘǗȜǭǽȜǝȎȁǜǬȎ Ƙрۅƿ̲ŵƸքୟŹࣲࣁƄƓƄƫų ▶︎ ţȎȎȜǝŤǝǪȜǜƔ" عৼ˝ƛࢷЭрٵƿۆźهŵřţҩŤǝǪȜǜƔdžǻȎǕȜǛȋȗƿ௰ƶƈƸƛŹۓƫƄűƕƜ֒űƫƈǀŸ ▶︎ ǿǝǬȂǛȗƘʈŸƿەմƄƗű ▶︎ ţǿǝǬƛ'.ƜƀƹƔ̿űƓűƸƜƇඵŤƬƌűƗƛƕŸřǿǝǬƘࡽҥƛǫLJȐǓǬȎǹDžLjȏŹਧűƓůƸƜƇඵƕŸ ▶︎ ǫLJǝǓƘǹDžLjȏƿΡź̌ƂƗű ▶︎ ݹƛȎǓnjǝǬŹ۪ƌƕźƘƊƛǹDžLjȏŹґϺƆƸƀƕƿەմƄƗű ▶︎ ୟƜǝǕȜȏdžNJǬƔźƸƵųƘʊƶƹƓűƸƕűųƀƕ ▶︎ ʓґȍLjǺȍȎŹǵǧǕȜǜভࢪǨȜȏƗƖƿʎƐƓLjȗǝǬȜȏƔźƸƵųƘƗƐƓűƸCE SLBJCP džǻȎǕȜǛȋȗ
SUPINF Inc. // twitter.com/toricls ▶︎ ್ࣲࢷЭƕۙࣘࢷЭƛԎࣙŹӒƗű ▶︎ CE್ࣲࢷЭƜ1/*GRCƍžƖۙࣘƜ.MQREPC1/*ƬƌűƗԎࣙƜdžǏȗ ▶︎ ௲̿ఽԽŹఽű
▶︎ ௲̿ڪƘȆȎȆȎ̅ࢪƿƱƸƵųƗƛƜžƌű" ƛȂLjǔȐȜǛȋȗƕŸƜƊƯƊƯ௲̿̅ࢪƔƜƗűQCCǥȜȄʇ̛ඹǫȎǴȎȜ ▶︎ ǛǔǮȏ1'%2#0+ƕŸ ƿžƐƓƎưǀƕǔȐȜǝǹȏƘ৮ɅƔźƸ ▶︎ ઈఄƛݮ੧ƿȁȜǬƿƅƓ˨್ƆƸ džǻȎǕȜǛȋȗ
SUPINF Inc. // twitter.com/toricls ోࣄ ▶︎ ǗȗǪǮƛҩভࢪŹƔźƓűƸ ▶︎ ǨȜȏƜѝźƗƯƛƿʎŵƝűűƕ֒ų ▶︎
51ȊȜǚȜƛМΙřȂǝǣȜDzȜǭਯƛভࢪǗǝǬƿױƐƓƔƯ#!1ɪуƛƿŵƸƌƮƘƜƊƹई֊ƛࢪࣇŹքୟ ▶︎ ভࢪǣǝǓƯҩƘ௰ƶƈƸ"MAICPLjȅȜǜƕΝƅƯƛƿʎƐƓų ▶︎ ǗȜǭǽȜǝřҥʱƗƖŹ˦ƓΝƅƍŹřǗȗǪǮƿ௰ƶƈƸڪƛǗȂȗǭƍžųࣶƗ ▶︎ džǻȎǕȜǛȋȗҩŹ@SLBJCCVCAP?GJQQƔř" ȂLjǔȐǛȜǛȋȗŹ@SLBJCCVCAP?GJQB@KGEP?RCƬƌűƗ ▶︎ ȅǬȎǓǝƛഁƿųnjȜǜNjȗǬƯǗȗǪǮƔƱƹƸƕűƺűƺҊƄűCE"?R?BME +?AICPCJ ▶︎ ȑǔഁ ▶︎ ǗȗǪǮƛկ̫Ɯ௰ƐƓűƸǻȑǟǝƛݢࠑ̰̌ƿƖƀŸƘǝǬȎȜȃȗǔƆƸƕƀƺƫƔ ▶︎ Ɗƛ˝ƛௐ́Ɯ̘ƛdžǻȎǕȜǛȋȗ?UQJMEQ $JSCLRBƘƼƈƸ ▶︎ ƖƀƔǗȗǪǮŹ̿űƓűƸŸƼŸƶƗűƀƕƿ̣لƘోࣄ୯ƆƸƀƕƿҴƆƸ ▶︎ ƖƀƔ̿żŸƼŸƶƗűƀƕƿҴƔźƸ ▶︎ ƖƀƔƯ̿ŸƈƸ ▶︎ ҰࣲࣁڪƛռڔƘୟƆƸȎȜǭǣLjȄƿटਘƔźƸ ▶︎ ƼȜű
SUPINF Inc. // twitter.com/toricls ోࣄ ▶︎ !'!"ඵ৻ৼࣶǫȎǴȎȜඵƱƶƗűƛǤȅǠǧǣLj ▶︎ !.3ȅȆȎƛ̫ƷզƓƕŸƿƎưǀƕƱƐƓř׆ƫƄƱŸƗǗȗǪǮƿ̿ŸƆ ▶︎
ƀƀƛ̫ƷզƓƿƎưǀƕƱƹƓƗűƕǗȗǪǮƛ̙ࣄƘƵƸǗǝǬ̹࢜Źۋш͎ƔźƗű ▶︎ ƊƯƊƯΝƅǿǝǬƔ̿űƓűƸǗȗǪǮƂǀƌƎƘƕƐƓయֳ ▶︎ "MAICPnjȗǜȗƛǻȑǟǝઈʇƯःӇǗȗǪǮভࢪǨȜȏƛnjȜǜNjȗǬŹȟਊƘ̿űƓűƸМΙƜƊƹƯःƄƌڊŹƬǀƗԬƈ ▶︎ %MJ?LEƔۆŸƹƌdžǻȎƛƵųƘͣȟƛǴLjǮȎƔ̿ʊƆƸdžǻȎǕȜǛȋȗƔƯřǗȗǪǮ͎ƄƓǫǻȑLjƆƸ ▶︎ SGJB 1FGN 0SLƿɤƛdžǻȎǕȜǛȋȗƕ˪୭கȆǫȏ ƔŵƸƀƕƘƵƸోࣄǗǝǬƛʃ߾ ▶︎ ҢٰதɇŹ௲źƸƛƔůǀƫƷ߲żƜ୬ƹƗű
SUPINF Inc. // twitter.com/toricls Thank you :D