AWS CloudShell にrbenvを入れて使ってみる
12/25/2020

Amazon Linux 2 環境を使って事前セットアップなしに aws cli
が扱える AWS CloudShell が先日リリースされました。
現在某プログラミングスクールにて副業でコードレビューを行なっているのですが、生徒さんはdockerを扱う前にrubyでコーディングしたアプリを提出する課題があります。
それぞれrubyのバージョンが異なるためrbenvを使って対応しているのですが、大量にgit cloneしたファイルやパッケージでローカル環境を汚したくないので、CloudShellにrbenvを入れて使ってみます。
CloudShellを起動する
AWS コンソール右上にちっちゃいTerminalマークがあり、これをクリックするとCloudShellが起動します。
起動後自動でセットアップが走り、数分立つとshellが使えるようになります。
rbenvを入れる
dev.to にそれっぽい記事がありこちらで導入できました。
libyaml-0.so.2
のインストールでエラーが出る場合は libyaml
を入れればOK。
libyamlを加味してruby 2.7.2を入れる場合は以下のようになります。
sudo yum -y groupinstall "Development Tools"
sudo yum -y install git-core zlib zlib-devel gcc-c++ patch readline readline-devel libffi-devel openssl-devel make bzip2 autoconf automake libtool bison curl sqlite-devel libyaml
wget https://github.com/yaml/libyaml/releases/download/0.2.5/yaml-0.2.5.tar.gz
tar xzf yaml-0.2.5.tar.gz
cd yaml-0.2.5
./configure --prefix=$HOME
make && make install
cd ..
rm -rf yaml-0.2.5
rm yaml-0.2.5.tar.gz
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
cd ~/.rbenv && src/configure && make -C src
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
~/.rbenv/bin/rbenv init
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
source ~/.bash_profile
mkdir -p "$(rbenv root)"/plugins
git clone https://github.com/rbenv/ruby-build.git "$(rbenv root)"/plugins/ruby-build
RUBY_CONFIGURE_OPTS=--with-libyaml-dir=$HOME rbenv install 2.7.2
rbenv global 2.7.2
gem env home
最後に
シンクライアントな端末からAWSリソースを管理すると便利そうです。
1GBの制限はありますが複数リージョンで使えるのでどんどん使っていきたいと思います。

©️ 2020 ふじい Dev-Remo-Work.