cloud9を弄ってみた@Ruby on Railsチュートリアル講座
『Ruby on Rails チュートリアル』解説セミナー(Rails 4.2対応)/ 晩秋集中セミナー - CoEdo.rb | Doorkeeperに週末3日間でていて、CourseraのMachine Learningは課題こなすだけで精一杯な状態。(とりあえず提出には間に合ってる…
講習のRuby on Rails チュートリアル:実例を使って Rails を学ぼうをやるにあたって、折角なのでCloud9を使ってみることにしたのでそのメモです。講習での感想やらはどこかで残そうと思います
Cloud9とは
Linuxの操作は苦手だけどruby on railsを弄りたい!って人にぴったりなクラウド開発環境を提供してくれるサイト.
Cloud9 combines a powerful online code editor with a full Ubuntu workspace in the cloud.
中身はLinuxだけど、GUIだけで大抵の事はできるようになっているので、cd
とかのLinuxコマンド知らなくても、railsチュートリアルをやる程度であれば十分な機能がある。
変更したところ
キーバインディング
default
,sublime
,emacs
,vim
から選べるのでvimにした。これ選べなかったら講習でも絶対macでやってたな…
起動時のシェルをbashからzshに変更
私のdotfilesは完全にzsh仕様になってるので速攻でbash→zshに変更して、dotfilesをimportして自分仕様に
参考サイト
- Wonderlands in Usagi's brain: c9.io で zsh を使えるようにする
- ヾ(o゚ω゚o)ノ゙ cloud9+zsh+preztoを用意してRailsチュートリアルを始めてみる - Qiita
変更コマンド
参考にしたサイトではzshをsourceから入れていてけど、sudo許可されてたので普通にapt-getでzsh入った。
なので後は諸々起動シェルを変更するためにchsh
したりtmux.conf
変更したり.
echo "install zsh..." sudo apt-get install zsh zsh_path=$(which zsh) # /etc/shellsにzsh追加 if ! grep $zsh_path /etc/shells > /dev/null 2>&1 ; then echo $zsh_path | sudo tee -a /etc/shells fi # デフォルトシェルを変更 current_shell=`grep $(whoami) /etc/passwd | cut -d':' -f7` if [ "$current_shell" != "$zsh_path" ]; then #zshをデフォルトのshellに sudo chsh -s $zsh_path ubuntu echo "changed default shell to $zsh_path" fi # cloud9はtmuxが起動するので、tmux側のデフォルトシェルも変更する if [ ! -f $HOME/.tmux.conf ]; then echo "set -g default-command zsh" >> $HOME/.tmux.conf echo "created $HOME/.tmux.conf" fi
自動化スクリプト
以下のコマンドで一気に上記をやってくれるので、お好みでどうぞ
# https://gist.github.com/kegamin/8d81a1d029a3aa50916d $ bash <(curl -sL 'https://gist.githubusercontent.com/kegamin/8d81a1d029a3aa50916d/raw/873ff2dccc0c9c1acc88d23ae0e1e85ee09a6804/zsh_install.sh')
が、しかし
これだけと言いたいところなんですが、これだとうまく初期起動時にzshに変わってくれません(´ω`)
docker -> micro_inetd + dropbear -> tmux
な感じでcloud9は起動されているようなのですが、何故か作ったtmux.confを読み込んでくれない...
tmux source-file $HOME/.tmux.conf
とかも無理で、dropbearで起動しているtmuxは/usr/bin/tmuxではなく/mnt/shared/sbin/tmux
ってのまでわかって面倒臭くなったので、とりあえずunset TMUX;tmux
して無理やり回避/(^o^)\
となると、なんでこんな事を!?とか思ってた echo "zsh" >> $HOME/.bashrc
という技も、まぁしょうがないのか…な。どこかでちゃんと調べて解決しとこう…
dotfiles入れて完了!
cloud9のシェル画面は小さいので、こんな感じで2行タイプにしてやっと使いやすい状態に。rails turorialは頻繁にgitのブランチ作成するので、やっぱりbranch名がちゃんと表示されないとね!
講習中結構Linuxコマンドをがりがり打ってましたが、大抵の事がcloud9上でできてしまうのでおそらく初心者でも問題ないかと思います。 ファイル作成(touch)や削除(rm)含め、検索諸々最低限の機能はGUI上で完結します