shimxmemo

メモをのこすよ!

bundler 1.12系を使うとRailsのチュートリアルでGuardがコケる件

ここの所RubyRailsを下記で勉強してます。

railstutorial.jp

 

上記だと、まだRails 4なので、コマンドなどは同じ内容の本家英語版を見てます。

www.railstutorial.org

 

ここで表題の件で詰まる。

これプログラミング未経験者だったら死んでる。

(未経験者がプロジェクトごとにbundlerでgem管理したりRails分けたりなんかしない説も)

 

前提

  • Macbook Air 2011
  • OS X El Capitan 10.11.6
  • homebrewでrbenv(1.0.0)とruby-buildをインストール
  • Ruby 2.3.1
  • グローバルにbundler 1.12.5インストール
  • プロジェクトごとにbundlerでgem管理
  • Rails(5.0.0)もbundlerでインストールしている
  • bundlerでインストールしたRailsを使用して操作を行う

ちなみにbundlerで管理しているGemfileは下記

Chapter 3: Mostly static pages | Ruby on Rails Tutorial (Rails 5) | Softcover.io

source 'https://rubygems.org'

gem 'bundler'
gem 'rails', '5.0.0'
gem 'puma', '3.4.0'
gem 'sass-rails', '5.0.5'
gem 'uglifier', '3.0.0'
gem 'coffee-rails', '4.2.1'
gem 'jquery-rails', '4.1.1'
gem 'turbolinks', '5.0.0'
gem 'jbuilder', '2.4.1'

group :development, :test do
gem 'sqlite3', '1.3.11'
gem 'byebug', '9.0.0', platform: :mri
end

group :development do
gem 'web-console', '3.1.1'
gem 'listen', '3.0.8'
gem 'spring', '1.7.2'
gem 'spring-watcher-listen', '2.0.0'
end

group :test do
gem 'rails-controller-testing', '0.1.1'
gem 'minitest-reporters', '1.1.9'
gem 'guard', '2.13.0'
gem 'guard-minitest', '2.4.4'
end

group :production do
gem 'pg', '0.18.4'
end


# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]

 

エラー内容

$ bundle exec guard

01:34:17 - INFO - Guard::Minitest 2.4.4 is running, with Minitest::Unit 5.9.0!
01:34:17 - INFO - Guard is now watching at '/Users/shimura/projects/rails-tutorial/sample_app'
[1] guard(main)>
01:34:45 - INFO - Run all
01:34:45 - INFO - Running: all tests
/Users/hogehoge/.rbenv/versions/2.3.1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- bundler (LoadError)
from /Users/hogehoge/.rbenv/versions/2.3.1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /Users/hogehoge/projects/rails-tutorial/sample_app/bin/spring:8:in `<top (required)>'
from bin/rake:3:in `load'
from bin/rake:3:in `<main>'

という感じでテストが実行されない。

 

どうしたか

大元にbundler 1.10.6をインストールし、実行時に

$ bundle _1.10.6_ exec guard

とbundlerのバージョンを指定して実行した。

原因が分からず、もにょるので詳しい方教えて欲しい。

ちなみに

$ bundle exec rake rails:update

では解決しなかった。

 

参照

bundle exec rails console ができない, `require': cannot load such file -- bundler/setup (LoadError) の解決方法 - Qiita

Macbookの初期設定をAnsibleで自動化したらすこぶる楽な件

実質1日ぐらい調べて写経してエラーと格闘してました。

これでいつでも移行できる。便利な時代。

2011のMacbook AiriSightは壊れるは電源コードは壊れるわで限界なので早く9月になって新Macbook Pro出してくださいお願いします。

 

参考

Mac の開発環境構築を自動化する (2015 年初旬編) - t-wadaのブログ

Mac OS Xの環境構築を自動化する(2016年度初旬編) | Developers.IO

↑神(ほぼほぼ流用させていただきました…)

 

できたもの

GitHub - shimx/mac-os-x-setup

手順も中に書いたので。

brew入れてpyenv入れてansible入れてコマンドポチーで終わるよ!最高!

 

brew

zsh

ghq

peco

neovim

tmux

あたり使ってます。

アプリはKarabinerが便利すぎる。

 

debian 8でプロジェクトごとにrails管理、nginxとunicorn連携

備忘録

 

ディレクトリ掘ってrailsインストールしてunicornの設定を書く。

nginx側で設定。hoge.sockで連携させる。

nginxリロード。

それぞれパスさえ間違えなければいける。

 

参考

さくらの VPS:WEBrick と Unicorn + Nginx で Ruby on Rails の表示まで - rakuishi.com

Rails 4.2 + Unicorn + Nginx でアプリケーションサーバの構築 - Qiita

UbuntuでRailsとUnicorn、Nginxの環境を構築しました - Qiita

debian 8にrbenv,ruby,プロジェクトごとにrailsインストール

備忘録

 

前提

debianのパッケージ管理はaptitude
rvmではなくrbenvを利用
globalのgemはbundlerのみインストール
あとはプロジェクトごとに管理(railsも)
rbenvは/opt以下にインストール
 

参照

何で/opt以下に入れるか
rvmとrbenvの比較

rbenvなどを入れる

さくらVPS(Debian)にrbenv,ruby,mysql,railsを入れる - mazeltov7のweb断片

rbenv設定(.rbenvをmkdirして、cdで.rbenvせずにgit cloneしておく)

$ cd /opt
$ git clone git://github.com/sstephenson/rbenv.git rbenv
$ mkdir rbenv/{shims,versions}

$ mkdir /opt/rbenv/plugins
$ cd /opt/rbenv/plugins
$ git clone git://github.com/sstephenson/ruby-build.git

$ touch /etc/profile.d/rbenv.sh
$ echo 'export RBENV_ROOT=/opt/rbenv' >> /etc/profile.d/rbenv.sh
$ echo 'export PATH="$RBENV_ROOT/bin:$PATH"' >> /etc/profile.d/rbenv.sh
$ echo 'eval "$(rbenv init -)"' >> /etc/profile.d/rbenv.sh
$ echo 'export MAKEOPTS="-j"' >> /etc/profile.d/rbenv.sh
$ source ~/.bashrc

 

プロジェクトごとにrails管理

便利なリンク集↓

System Wideにrbenvを入れて、rubyとrailsを入れる - mazeltov7のweb断片

globalのrubyはBundlerだけインストール、その辺りの手順↓

BundlerでプロジェクトごとにRailsをインストールする手順 | Yuhiisk

共有サーバでの考え方など↓

rbenv を system-wide にインストールする際の傾向と対策 - Qiita

 

その他

複数ユーザーがinstallするわけでもないので、rootのままで
/etc/profile.d/rbenv.shに設定するのはsshでログインした時に適用して欲しいから。
 
 
 
 

お名前.comで取得したドメインをさくらVPSに設定(さくらのDNSを利用)

備忘録

 

前提

  • ドメインはあらかじめお名前.comで取得
  • お名前.com側のDNSを使わず、さくら側のDNSを利用

 

参照

お名前.com&さくらインターネットでドメイン設定をしてみた | 株式会社まちいろ

お名前.com側での設定

お名前.comでさくらのネームサーバ登録

DNSのIPは下記参照(記事執筆現在)

ネームサーバ利用申請方法|さくらインターネット公式サポートサイト

 

さくら側でドメイン設定

今回は簡単設定でサーバのIPを指定で良い。

サブドメインが欲しかったので、CNAMEでサブドメインを切る。

さくらVPS - お名前.com - apache 環境にサブドメインを設定するメモ② - さくらVPS側でやる - tweeeetyのぶろぐ的めも

 

digで疎通確認。

新規のドメインなら割と反映が早い。

ドメイン移管はDNS設定時のTTLに注意。

移管前に残り時間計算して短く変更しておくと吉。移管後に元に戻す。

さくらVPSにてDebian 8インストール

備忘録
 

はじめに

作成するユーザーはログインする任意のユーザー、アプリケーション用のユーザー名apps。

suでrootになれるのはwheelグループのユーザーのみ(hnakamur’s blog: Debianにはデフォルトではwheelグループが無い)。

sudoを使えるのはsudoグループのユーザーのみ。

sshはログインする任意のユーザーのみ許可。

この辺りのベストプラクティスを知りたい所。

 

参照

OSインストール

カスタムOSインストールガイド - Debian 7/8|さくらインターネット公式サポートサイト

IPアドレスとかゲートウェイとか、管理画面に書いてある。

サブネットマスクに注意。

 

パッケージ管理

apt-getとaptitudeって結局どう違うの(´・ω・`)? – もぐら王国

aptitude使うことにする

 

OS設定

ユーザーをsudoグループに追加してsudo使えるように

Debian/sudoによるコマンドを実行するように設定する方法 - Linuxと過ごす

 

設定とセキュリティ対策

Debian 8(jessie)をインストールするときのまとめ | 設定やツールねた

さくらVPSにDebianを入れたメモ - Qiita

そこそこセキュアなlinuxサーバーを作る - Qiita

sudoersをいじるのはvisudoね。

 

日本語 

日本語が化けるときの対処法。(Ubuntu/Debian版) - それマグで!

インストールしてから、やっぱ日本語に設定しときゃ良かったなと。