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
ruby 環境構築 @Niigata.rb#3
Search
kasacchiful
PRO
August 31, 2013
520
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ruby 環境構築 @Niigata.rb#3
Niigata.rb #3 で発表した資料です。
kasacchiful
PRO
August 31, 2013
More Decks by kasacchiful
See All by kasacchiful
上越のサメ食文化を訪ねて - 新潟市民の初体験レポ / ssmjp-shark
kasacchiful
PRO
1
59
Rust on AWS でデータ分析 / 20260523iotlt-niigata-rust-on-aws
kasacchiful
PRO
0
26
Step Functionsで始めるサーバーレス入門 〜 つないで動かすAWSサーバーレス
kasacchiful
PRO
0
57
Amazon Q Developer CLI (現Kiro CLI) で作った 新潟ランチマップWebアプリのこれまでとこれから / 20260207jawsug-tochigi
kasacchiful
PRO
0
98
Amazon SageMaker Catalogの、AIエージェントによる自動データ分類機能を試してみようとしたが、できなかったので、代わりに最近構築したデータ連携基盤を紹介します / 20260117jawsug-fukui
kasacchiful
PRO
0
98
データファイルをAWSのDWHサービスに格納する / 20251115jawsug-tochigi
kasacchiful
PRO
2
280
テーブル定義書の構造化抽出して、生成AIでDWH分析を試してみた / devio2025tokyo
kasacchiful
PRO
0
910
ワイがおすすめする新潟の食 / 20250912jasst-niigata-lt
kasacchiful
PRO
1
59
WorkersでDiscord botを試してみた / 20250822workers-tech-talk-niigata
kasacchiful
PRO
1
170
Featured
See All Featured
Everyday Curiosity
cassininazir
0
230
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
200
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Crafting Experiences
bethany
1
180
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
160
Building an army of robots
kneath
306
46k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
380
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
Why Our Code Smells
bkeepers
PRO
340
58k
Are puppies a ranking factor?
jonoalderson
1
3.5k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Transcript
͡ΊͯͷRubyڥߏங ּݪɹɹ( @kasacchiful ) 138݄31༵
త Rubyͷ࣮ߦڥΛߏஙͯ͠Έ·͠ΐ͏ Ruby͕ಈ͔ͳ͍ͱɺษڧ··ͳΒͳ͍ʂ Ruby͕ಈ͔ͳ͍ͱɺศརͳRubyπʔϧ ͑ͳ͍ʂ OSผʹઆ໌͍͖ͯ͠·͢ 138݄31༵
ࣗݾհ ּݪɹ (@kasacchiful) ৽ׁࢢࡏॅ SIerۈ ීஈMacɺࣄWindows JaSST৽ׁɹ࣮ߦҕһ Ruby͕͓ؾʹೖΓ 138݄31༵
ຊΔ͜ͱ Mac homebrew + rbenv, ruby-build Linux ( CentOS )
rbenv, ruby-build Windows One-Click Installer bundlerʹΑΔgemཧ αϯϓϧΞϓϦέʔγϣϯ࣮ߦ 138݄31༵
࣮ߦڥߏங Macฤ 138݄31༵
࣮ߦڥߏங (Macฤ) σϑΥϧτͰ͑Δ Ruby 1.8.7 αϙʔτऴྃ ιʔείϯύΠϧ ·ͣ༻͠ͳ͍ 138݄31༵
࣮ߦڥߏங (Macฤ) rvm rbenv, ruby-build ෳͷRubyόʔδϣϯΛΠϯετʔϧɺ Γସ͑Մೳ rvmߴػೳɺrbenvγϯϓϧͱ͍͏ҹ rvmͰෳͷgemϑΝΠϧΛཧՄೳ bundler͋Δ͔Βෆཁ͔ʢޙड़ʣ
͜͜Ͱɺrbenv, ruby-buildΛͬͯߏஙͯ͠Έ·͠ΐ͏ɻ 138݄31༵
࣮ߦڥߏங (Macฤ) ߏஙڥ MacOS X 10.8.3 homebrew 0.9.4 git 1.7.12.4
(Apple Git-37) rbenv 0.4.0 ruby-build 20130518 138݄31༵
࣮ߦڥߏங (Macฤ) HomebrewΠϯετʔϧ ཁjava, Xcode command line tools XcodeΛ։͖ɺʮpreferencesʯ 㱺ʮdownloadsʯ㱺ʮComponentsʯ͔Β
ʮCommand Line ToolsʯΛΠϯετʔϧ Homebrew αΠτͷΠϯετʔϧίϚϯυ࣮ߦ 138݄31༵
$ ruby -e “$(curl -fsSL https:/ /raw.github.com/mxcl/hombrew/go)” $ brew --version
$ brew update $ brew doctor 138݄31༵
࣮ߦڥߏங (Macฤ) rbenv, rubu-buildΠϯετʔϧ $ brew install openssl $ brew
install readline $ brew install ruby-build $ brew install rbenv $ echo ‘eval “$(rbenv init -)”’ >> ~/.bash_profile $ source ~/.bash_profile 138݄31༵
࣮ߦڥߏங (Macฤ) rbenv, rubu-buildΠϯετʔϧ $ RUBY_CONFIGURE_OPTS="--with-readline-dir=`brew --prefix readline` --with-openssl-dir=`brew --prefix
openssl`" rbenv install 2.0.0-p195 $ rbenv rehash $ rbenv global 2.0.0-p195 ## ϓϩδΣΫτ͝ͱʹόʔδϣϯࢦఆ͢Δ߹ $ rbenv local 2.0.0-p195 ɹ#=> .ruby-versionϑΝΠϧʹॻ͖ࠐ·ΕΔ 138݄31༵
࣮ߦڥߏங (Macฤ) ಈ࡞֬ೝ $ irb > require ‘openssl’ => true
> require ‘zlib’ => true > require ‘open-uri’ => true > open (“https:/ /www.google.com”).read => <doctype html>... 138݄31༵
࣮ߦڥߏங (Macฤ) rbenvͷ໘ͳ gemίϚϯυΛΠϯετʔϧ͢Δͨͼʹɺ rbenv rehash͠ͳ͍ͱ͍͚ͳ͍ ~/.rbenv/shims ҎԼͷߋ৽ gem install
rbenv-rehash 138݄31༵
࣮ߦڥߏங Linuxฤ 138݄31༵
࣮ߦڥߏங (Linuxฤ) yum apt-get ͰೖखՄೳ Ͱόʔδϣϯݹ͍ʢ͔ͨ͠ͳ͍ʣ ιʔείϯύΠϧ ιʔε͔ΒrpmbuildͬͯrpmΛ࡞͢Δ͜ ͱͰ͖Δɻ
138݄31༵
࣮ߦڥߏங (Linuxฤ) rvm rbenv, ruby-build Macͱಉ༷ʹར༻Մೳɻ ྫͱͯ͠ɺCentOS 6.4্ʹrbenv, ruby- buildΛΠϯετʔϧͯ͠Έ·͢
γεςϜϫΠυʹ͑ΔΑ͏ʹͯ͠Έ· ͢ 138݄31༵
# groupadd -g 600 staff # yum install git #
cd /usr/local/src # git clone https:/ /github.com/sstephenson/rbenv.git rbenv # chgrp -R staff rbenv # chmod -R g+rwxXs rbenv # vi /etc/profile.d/rbenv.sh export RBENV_ROOT=/usr/local/rbenv export PATH="$RBENV_ROOT/bin:$PATH" eval "$(rbenv init -)" 138݄31༵
# cd /usr/local/src/rbenv # mkdir plugins # cd /usr/local/src/rbenv/plugins #
git clone https:/ /github.com/sstephenson/ruby-build.git # chgrp -R staff ruby-build # chmod -R g+rwxs ruby-build 138݄31༵
# cd /usr/local/src/rbenv/plugins # git clone https:/ /github.com/sstephenson/rbenv-default-gems.git # chgrp
-R staff rbenv-default-gems # chmod -R g+rwxs rbenv-default-gems # cd /usr/local/src/rbenv # vi default-gems bundler pry rbenv-rehash 138݄31༵
(rbenv installதͷcheckͰ͍Ζ͍ΖΓͳ͍ͷͰɺyum install͓ͯ͘͠) # yum install gcc make zlib-devel readline-devel
openssl-devel # rbenv install 1.9.3-p448 # rbenv install 2.0.0-p247 # rbenv rehash # rbenv global 2.0.0-p247 138݄31༵
࣮ߦڥߏங Windowsฤ 138݄31༵
࣮ߦڥߏங (Windowsฤ) Windows൛όΠφϦ͕༗ࢤʹΑΓ͞Εͯ ͍·͢ɻ ActiveScriptRuby One-Click Ruby Installer for Windows
͜͜ͰɺOne-Click InstallerΛͬͯߏஙͯ͠Έ·͠ΐ͏ɻ 138݄31༵
࣮ߦڥߏங (Windowsฤ) μϯϩʔυ http:/ /rubyinstaller.org/downloads/ RubyΠϯετʔϥͱDevKitΛμϯϩʔυ DevKit: native extensionΛϏϧυ͢Δπʔϧ 138݄31༵
࣮ߦڥߏங (Windowsฤ) RubyΠϯετʔϥ࣮ߦ Πϯετʔϥͷࢦࣔʹै͏͚ͩ σϑΥϧτͰɺC:¥Ruby200C:¥Ruby193ʹ Πϯετʔϧ͞Ε·͢ ύε͕௨͍ͬͯͳ͔ͬͨΒɺύεΛ௨͠·͠ΐ ͏ 138݄31༵
࣮ߦڥߏங (Windowsฤ) DevKit࣮ߦ ࣗݾղౚܗࣜͳͷͰɺ࣮ߦͯ͠ղౚ͢Δ ίϚϯυ͔Βɺղౚͨ͠ϑΥϧμʹcdͨ͠ޙɺ ҎԼΛ࣮ߦ ruby dk.rb init ruby
dk.rb install 138݄31༵
࣮ߦڥߏங (Windowsฤ) RubyͷόʔδϣϯΓସ͑ʁ pikΛΠϯετʔϧ͢Δͱɺrubyͷόʔδϣ ϯΓସ͕͑Ͱ͖ΔΒ͍͠ʢࣗະ֬ೝʣ ࣗɺύεΛΓସ͑Δ͜ͱͰରԠͯ͠ ͍Δ 138݄31༵
࣮ߦڥߏங (Windowsฤ) WindowsͰͳ͘ಈ͖·͕͢ɺWindows ͩͱ͢ΜͳΓಈ͔ͳ͍gemଟ͍Ͱ͢ɻ MacLinuxʹൺͯɺWindows࣮ߦ͕ ͍Β͍͠ʢࣗͰະ֬ೝʣ ݸਓతʹɺମײ΄ͱΜͲؾʹͳΒͳ͍Ϩϕϧ͔ͳ WindowsͰ͏·͘ಈ͔ͳ͍߹ɺ Ծڥ্ͷLinuxͰಈ͔͢͜ͱ ݕ౼ͨ͠΄͏͕͍͍͔ɻ
138݄31༵
࣮ߦڥߏங bundlerฤ 138݄31༵
࣮ߦڥߏங (bundlerฤ) bundlerΛͬͯgemΛཧ͠·͠ΐ͏ جຊతʹɺbundler͚ͩ gem install ϓϩδΣΫτ͝ͱʹGemfileʹͯཧ ϓϩδΣΫτԼͷvendor/bundleʹgemΛ Πϯετʔϧ rvmͷgemsetସෆཁʹͳΔ
138݄31༵
࣮ߦڥߏங (bundlerฤ) bundler Πϯετʔϧ $ gem install bundler $ rbenv
rehash 138݄31༵
࣮ߦڥߏங (bundlerฤ) rubyϓϩδΣΫτ foo ͷ߹ $ cd ~/foo $ bundle
init #=> Gemfileͻͳܗ࡞ # A sample Gemfile source "https:/ /rubygems.org" # gem "rails" gem ‘pp’ $ bundle install --path=vendor/bundle #=> ./vendor/bundle ʹΠϯετʔϧ 138݄31༵
࣮ߦڥߏங (bundlerฤ) rubyϓϩδΣΫτ foo ͷ߹ $ vi main.rb require ‘bundler/setup‘
#=> bundlerͷgemʹݻఆ require ‘pp‘ #=> ݸผʹrequire Bundler.require #=> Ұׅrequire pp “Foo!” $ ruby main.rb 138݄31༵
࣮ߦڥߏங (bundlerฤ) railsϓϩδΣΫτ hoge ͷ߹ $ cd ~/hogehoge $ bundle
init #=> Gemfileͻͳܗ࡞ # A sample Gemfile source "https:/ /rubygems.org" gem "rails" $ bundle install --path=vendor/bundle #=> ./vendor/bundle ʹΠϯετʔϧ 138݄31༵
࣮ߦڥߏங (bundlerฤ) railsϓϩδΣΫτ hoge ͷ߹ $ bundle exec rails new
hoge -B $ cd hoge $ bundle install --path=vendor/bundle 138݄31༵
·ͱΊ 138݄31༵
·ͱΊ Mac Linux ( CentOS ) rbenv, ruby-build Windows όΠφϦΠϯετʔϧ
bundlerʹΑΔgemཧ ϓϩδΣΫτ͝ͱʹ࣋ͭͱศར 138݄31༵
138݄31༵