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
みんなでつかう RStudo Server のつくりかた (Tokyo.R #105)
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Hisawo Takase
April 22, 2023
Technology
810
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
みんなでつかう RStudo Server のつくりかた (Tokyo.R #105)
Tokyo.R #105 LT の発表です。
Hisawo Takase
April 22, 2023
Other Decks in Technology
See All in Technology
AIっぽい文章を採点して人間らしく直すアプリを作ってみた
yama3133
2
130
AmazonRoute 53ではじめてのドメイン取得!HTTPS化までの道のりを整理してみた
usanchuu
3
130
ACE-Step-1.5で見る 音楽生成AIのしくみと“破綻だけ直す”Retake機能の開発【zennfes spring 2026 登壇資料】
personabb
1
140
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.5k
AWSシリコン最前線 〜AI時代のチップ選択を読み解く〜
htokoyo
2
500
Djangoユーザが知っ得なPostgreSQL機能 - 設計の選択肢を増やす / Djang-use-PostgreSQL
soudai
PRO
1
230
RAG を使わないという選択肢
tatsutaka
1
190
爆速でマルチプロダクトを立ち上げる時 事業・CTO目線で大事にしたい事
miyatakoji
0
100
2026TECHFRESH畢業分享會 - Lightning Talk - 打造精準高效的 MCP 設計模式與測試實務
line_developers_tw
PRO
0
860
10倍の生産性を実現するAI駆動並列エージェントのすべて
kumaiu
5
1.4k
LLMにもCAP定理があるという話
harukasakihara
0
310
ルールやカスタム機能、どう活かす?ハンズオンで体感するIBM Bobの出力コントロール
muehara
1
130
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
432
67k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.8k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
240
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
310
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.2k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
440
The Pragmatic Product Professional
lauravandoore
37
7.3k
SEO for Brand Visibility & Recognition
aleyda
0
4.6k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
Test your architecture with Archunit
thirion
1
2.3k
Visualization
eitanlees
152
17k
Transcript
ΈΜͳͰ͔ͭ͏ RStudio Server ͷͭ͘Γ͔ͨ Tokyo.R #105 (2023-04-22) @hisawotakase
ࣗݾհ Tokyo.R #105 2 ‣ ໊લɿߴٱ (@hisawotakase) ‣ ৬ۀɿͱ͋ΔίϯαϧςΟϯάϑΝʔϜͰΠϯϋεΤϯδχΞΛ
ɹɹɹͬͯ·͢ʢσʔλϕʔε͕͖ʣ ‣ RྺɿTokyo.Rʹ͍ͩͿલ͔ΒࢀՃͯ͠Δ͚Ͳ… ‣ ۙگɿ࣮͚ͬ͜͏ڊঊͩͬͨ͜ͱΛΓ·ͨ͠ɿ
‣ ࣾͷษڧձ༻ʹ RStudio Server ڥΛ࡞ͬͨΒɺͳ͔ͳ͔͍͍ײ͡ɻ ‣ γεςϜ෦ɾηΩϡϦςΟ෦ͷରࡦ͋ΔΑɻ ‣ ͥͻࣾͷRڥͷඋʹ͝׆༻͍ͩ͘͞ʂ ‣
Google Cloud Platform εςΩʂ ࠓ͓͢͠Δ͜ͱɿ 3 Tokyo.R #105
4 ‣ Rࣗମʹ͍ͭͯͷʢͨͿΜʣग़͖ͯ·ͤΜɻ ‣ ۩ମతͳઃఆɺԼهςοΫϒϩάΛ͝ࢀর͍ͩ͘͞ɻ ‣ RStudio ServerΛGoogle Cloud RunͰखܰʹӡ༻͢Δ
‣ ʲ2022൛ʳRStudio ServerΛGoogle Cloud RunͰखܰʹӡ༻͢Δ ‣ RStudio ServerͰPythonΛ͍͍ͨ ɹɹɹ(ࠓ͔Βߋ৽Ͱ͖ͯͳ͍͚Ͳɻɻ) ‣ ࠓͦ͜ˢʹॻ͔ͳ͔ͬͨ͜ͱΛओʹ͓͠·͢ɻ …͓͠͠ͳ͍͜ͱɿ Tokyo.R #105
5 ͡·Γɿ ‣ ϚʔέςΟϯάઐ߈ͷ৽ଔࣾһʢ͔͠ݱͷେֶӃੜʣ͕ೖ͖ࣾͯͨ͠ɻ SASSPSSͳͲʹՃ͑ͯR͖ͬͯͨͱͷ͜ͱɻ ‣ ͥͻੳख๏ͱ͔ΛڭΘΓ͍ͨʂͦΕͳΒษڧձΛ্ཱͪ͛Α͏ʂ ‣ ͰࢀՃऀ༗ࢤͷPCʹRStudioΛΠϯετʔϧ͢ΔڐՄग़ͳ͍ͩΖ͏ͳɻɻ
‣ ͦΕͳΒ RStudio Server ͷڥΛ࡞ͬͯɺ࠲ֶʴϋϯζΦϯͰʂ ‣ Αʔ͠ɺύύ͕ΜͬͪΌ͏ͧʂ Tokyo.R #105
6 γεςϜߏͰٻΊͨ͜ͱ ‣ Ͱ͖Δ͚ͩ҆͘ɿඅ༻։ൃνʔϜܦඅͳͷͰ ‣ ϝϯςφϯεϑϦʔɿͦ͜·Ͱख͕ճΒͳ͍ ‣ ͰηΩϡϦςΟ໘Ͱۤ࿑ͨ͘͠ͳ͍ɿ ‣ ѱҙͷ͋Δ߈ܸऀ͔Βͷ৵ೖ
‣ աࣦʹΑΔྲྀग़ Tokyo.R #105 → Google Cloud Run + Identitiy-Aware Proxy Λ͓͏ʂ
7 γεςϜߏ ‣ Google Cloud Runɿ ‣ Dockerͱ͍͏Ծڥͷ࣮ߦڥ ʢTokyo.RͷDocker
fi leΛϕʔεʹ͍͖ͤͯͨͩ͞·ͨ͠ʣ ‣ Քಇ͍ͯ͠Δͱ͖͚࣮ͩମԽ͢Δɿෆ༻࣌ʹফ໓ → අ༻༻͍ͯ͠Δͱ͖͚ͩൃੜ͢Δ → σʔλஔ͖ͬͺͳ͠Ͱ͏͔ͬΓྲྀग़ͱ͍͏ةݥݮΒͤΔ ※ ༻͢ΔσʔλGoogleεϓϨουγʔτ/Google Bigquery͔ΒಡΈࠐΉΑ͏ઃఆ ‣ Identitiy-Aware Proxyɿ ‣ લஈʹGoogleೝূΛஔ͍ͯɺڐՄͨ͠ΞΧϯτͷΈΞΫηεՄೳ ‣ ͦΕҎ֎ RStudio Server (on Cloud Run) ʹ౸ୡ͢Δલʹڋ൱ ‣ ۈઌͰ Google Workspace Λ༻ͯ͠ΔͷͰɺୀ৬ऀͷݖݶണୣෆཁ Tokyo.R #105
8 γεςϜࣨɾηΩϡϦςΟࣨʹঝೝΛಘΔ Tokyo.R #105 ‣ ࢲͷۈઌͰɺൃਃͳͲͷঝೝϧʔτʹγεςϜࣨɾηΩϡϦςΟ͕ࣨೖͬͯ·͢ →ͦͷਃʹɺ͜Μͳײ͡ͷίϝϯτΛ͚ͭ·ͨ͠ ʢ͕͢͞ʹͦͷ··ެ։ͩͱͳΜ͔ݴΘΕͦ͏ͳͷͰɺएׯ΅͔ͯ͠·͢ʣ ։ൃνʔϜͰओ࠵͍ͯ͠Δσʔλੳɾ౷ܭֶͷࣾษڧձ
(౷ܭֶಓ) Ͱ༻͢ΔRݴޠͷ࣮ߦڥ (RStudio Server) ͷΠϯϑϥ༻ྉ Ͱ͢ɻ ʲֹۚ༰ͷઆ໌ʳ 2022ͷ࣮͕ฏۉͯ͠ 3,000ԁ/݄ ఔͰ͋ͬͨͨΊɺ3,000ԁ * 12ϱ݄ * 1.1(ফඅ੫10%) = 39,600ԁ/ ͱࢉग़͠·ͨ͠ɻ අ༻ͷେ෦ (2,500/݄) ηΩϡϦςΟͷͨΊͷϩʔυόϥϯα༻ྉͰ͢ (ID/PWʹΑΔϩάΠϯը໘ͷલஈʹGoogleͷOAuthೝূΛ ஔ͍ͯอޢ͍ͯ͠·͢) ɻຊษڧձͰۀσʔλΛࡐʹͯ͠ͷੳ/σΟεΧογϣϯ (֤෦ͷ্ʹΑΔྃঝࡁΈ) ߦ͍ͬͯΔͨ ΊɺສશΛظͯ͜͠ͷߏʹͨͨ͠Ίʹඅ༻͕ൃੜ͍ͯ͠·͢ɻ ͳ͓࣮ߦڥ༻ͷαʔόΠϯϑϥ (Google Cloud Run) ෆ༻࣌ʹΠϯελϯε͕ফ໓͠σʔλফ͑ΔͨΊɺۀσʔλ͕αʔό্ʹ Γଓ͚Δͱ͍͏͜ͱ͋Γ·ͤΜɻ → ແࣄɺ௨Γ·ͨ͠ʂ
9 ͲΜͲΜઃఆ͢Δ ‣ Tokyo.R͔Βɺಛʹ @bob3bob3 ͞Μ͔Βͨ͘͞ΜڭΘΓ·ͨ͠ʂ ‣ GGally, Summarytools (Tokoy.R
#99 ύʔϚʔεςʔγϣϯͷϖϯΪϯͨͪ #1) ‣ Python (Tokyo.R100ճͳͷͰɺ ͦΖͦΖPythonͱྑ͍ͨ͘͠) Tokyo.R #105 # for GGally and Summarytools # https://github.com/dcomtois/summarytools#required-debian RUN apt-get -y update && apt-get -y install libmagick++-dev libtk8.6 libtcl8.6 RUN Rscript -e "install.packages(c( \ 'GGally', \ 'summarytools'))" # for python 3.11 RUN apt-get -y install software-properties-common RUN add-apt-repository ppa:deadsnakes/ppa RUN apt-get -y update && apt-get -y install python3.11 python3.11-dev python3-pip python3.11-venv curl RUN update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.11 100 RUN update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 90 RUN curl -sS https://bootstrap.pypa.io/get-pip.py | python3.11 RUN pip install numpy scipy pandas lightgbm optuna RUN Rscript -e "install.packages('reticulate')"
10 ͍͢͝ʂ͍Ζ͍ΖͰ͖Δʂ͏Ε͍͠ʂ Tokyo.R #105
11 ·ͱΊ Tokyo.R #105 ‣ ใηΩϡϦςΟཧʹݫ͍͠ࡢࠓ͚ͩͲɺ͕ΜΕͳΜͱ͔ͳΔɻ ‣ ࣾͷRڥඋͷ͓ʹཱͯΕ͍Ͱ͢ɻ ‣ Tokyo.Rษڧձͷօ͞Μɺ͍ͭ͋Γ͕ͱ͏͍͟͝·͢ʂ
‣ Google Cloud Platform εςΩʂ
12 Enjoy! Tokyo.R #105