심기일전
1년 만에 RoR을 보려니 역시 바뀐 것이 너무 많다. 이전에 써 놓은 개발환경 구성 글은 예전 버전용으로는 의미가 있겠지만 Ubuntu 14.04, Ruby 2.1.2, Rails 4.1에 맞춰서 다시 개발환경 설치기를 작성한다. 설치과정은 온전히 Gorails를 참조했다. [참조]
서버 셋팅
서버는 공부하는데 투자할겸 월 10불로 Digital Ocean에서 맞췄다. AWS도 써봤고 애저도 써봤지만 이것 저것 설정이 귀찮아서 간단히 바로 설정해 쓰기엔 이게 제일 편한 것 같다. 1분 이면 이렇게 하나의 서버 인스턴스가 생성된다. (참고로 Digital Ocean 에서는 Droplet란 용어를 쓴다.)
서버에 접속하면 먼저 update/upgrade를 해준다. 다음으로는 이후의 명령어들을 시행하기 위해서 루트가 아닌 새로운 유저를 생성해 주는게 좋다. “name” 부분에 자신의 이름을 넣고 다음과 같이 새로 사용자를 생성한다. 생성 후에는 패스워드를 넣어준다. [유저생성참고]
1 2 3 4 |
apt-get update apt-get upgrade useradd name -m -s /bin/bash passwd name |
앞으로 사용할 sudo 명령어를 위해서 sudoers파일도 수정해 둔다. sudoers 파일은 쓰기가 잠겨 있으므로 사용할 때는 풀어주고 수정 후에 다시 원상복구를 해야 한다. 자세한 내용은 다른 블로그를 참고 [참고]
루비 설치
서버 준비는 끝났으니 이젠 Gorails를 따라가보자. 일단은 새로 설치했으니 update를 하고난 후 루비설치에 필요한 기본적인 의존 패키지들을 몽땅 설치하자.
1 |
sudo apt-get install git-core curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev python-software-properties |
루비가 처음이신 분들은 헷갈릴 수도 있지만 보통 루비는 바로 설치하지 않고 일종의 관리 프로그램(?)을 사용해서 설치하는게 버전 관리 등 여러 이유로 편하다고 한다. (나도 초보이므로 그냥 따라서 한다.) 마지막 커맨드까지 실행해서 루비 버전을 확인할 수 있다면 성공적으로 루비가 설치된 것이다!
1 2 3 4 5 6 7 8 9 10 11 12 13 |
cd ~ git clone git://github.com/sstephenson/rbenv.git .rbenv echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc echo 'eval "$(rbenv init -)"' >> ~/.bashrc exec $SHELL git clone git://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc exec $SHELL rbenv install 2.1.2 rbenv global 2.1.2 ruby -v |
다음으로, 루비에는 젬이라는 개념이 있는데 쉽게 생각하면 파이썬의 pip나 nodejs의 nfm 같은 패키지 매니저라고 보면 된다. 아래 명령어는 일일이 각 젬의 문서를 로컬에 다운받지 말라는 옵션이라는데 따라하자. 손해볼 것 없으니.
1 |
echo "gem: --no-ri --no-rdoc" > ~/.gemrc |
Git 설정 및 SSH 키 Github 등록
Gorails에서는 Git 설정과 공개키를 생성하여 Github에 등록까지 친절하게 알려주신다. 아래 그대로 따라하시면 된다. “YOUR NAME”, “YOUR@MAIL.com”은 정말 본인의 정보를 입력해야 한다. 마지막 명령어를 치면 몇가지 입력할 정보가 있는데 알아서 잘 넣어주면 된다.
1 2 3 4 |
git config --global color.ui true git config --global user.name "YOUR NAME" git config --global user.email "YOUR@EMAIL.com" ssh-keygen -t rsa -C "YOUR@EMAIL.com" |
이제 생성된 공개키를 아래 명령어로 출력해서 복사하고 Github의 설정에 들어가서 SSH Keys에 새로 키를 등록하면 된다.
1 |
cat ~/.ssh/id_rsa.pub |
등록이 정상적으로 이루어 졌는지지 “ssh -T git@github.com”을 입력하여, 위와 같은 메시지를 받으면 끝!
레일스 설치
레일스에서 사용하는 의존 라이브러리가 많아서 nodejs도 설치가 필요하다고 한다. 그럼 설치하자! 아래 명령어는 nodejs가 정식 리파지토리에 없어서 PPA 리파지토리를 등록해서 리파지토리를 업데이트하고 nodejs를 설치하겠다는 의미이다.
1 2 3 |
sudo add-apt-repository ppa:chris-lea/node.js sudo apt-get update sudo apt-get install nodejs |
드디어 레일스를 gem으로 설치!
1 |
gem install rails |
새로운 gem을 설치했을 경우 이를 사용가능하게 해주는 리프레쉬 같은 느낌의 명령어를 한번 쳐줘야 한다.
1 |
rbenv rehash |
자 이제 레일스 버전이 찍히는지 확인해 본다. 감격이다! 지금까지 이렇게 에러 없이 한 큐에 설치된 가이드 처음 본다.
레일스는 기본적으로 sqlite3를 사용하기 떄문에 데이터를 파일로 저장하지만, DB를 사용하고 싶으신 분들은 Mysql이나 PostgreSQL중 하나를 계속해서 따라가면 설치할 수 있다. 그대로 실행만 하면 될 것 같다. (여기서는 Postrgresql을 따라한다.) 다시 한번 참조한 사이트를 소개한다. 풀URL로~! https://gorails.com/setup/ubuntu/14.04
PostgreSQL 설치
PostgreSQL도 기본 리파지토리에 없어서 아래와 같은 방법으로 추가해주고 설치하면 된다. 역시 오류없이 9.3 버전을 다음의 명령어로 설치할 수 있다.
1 2 3 4 5 |
sudo sh -c "echo 'deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main' > /etc/apt/sources.list.d/pgdg.list" wget --quiet -O - http://apt.postgresql.org/pub/repos/apt/ACCC4CF8.asc | sudo apt-key add - sudo apt-get update sudo apt-get install postgresql-common sudo apt-get install postgresql-9.3 libpq-dev |
이어서 “username”에 db에 사용할 사용자 이름을 넣고 사용자를 생성하면 된다.
1 2 3 |
sudo -u postgres createuser username -s sudo -u postgres psql postgres=# \password username |
레일스 App 생성
마지막으로 정상적으로 모든 과정이 마쳤는지를 점검하기 위해서 테스트용 myapp을 하나 생성한다. -d 옵션을 안 붙이면 레일스에서는 sqlite가 기본 DB가 된다. 아니면 아래와 같이 옵션으로 postgresql 또는 mysql을 상황에 따라 설정하면 된다. 그리고 나서 rake 명령어로 db를 생성후 서버로 돌려본다.
1 2 3 4 |
rails new myapp -d postgresql cd myapp rake db:create rails server |
자신의 주소에 3000번 포트로 들어가서 아래와 같은 화면이 정상적으로 나온다면 성공이다! 자 이제 본격적인 RoR 개발을 시작해보자!