ubuntu 18.04 LTS에 Ruby on Rails 프로젝트 설치 및 실행


--------------------------------------------------------------------

준비물 

- AWS ubuntu 18.04 LTS free tire 


또는

- Window WSL(Windows Subsystem for Linux ) ubuntu  18.04 LTS


--------------------------------------------------------------------- 


--------------------------------------------------------------------

설치 할 프로그램 버전

- ruby 2.5.3

- Rails 5.2.3

- Postgresql 9.5

--------------------------------------------------------------------- 



--------------------------------------------------------------------
미리보는 최종 결과물

http://54.180.91.160:3000/todo








---------------------------------------------------------------------

리눅스 명령어 시작
apt-get 업데이트


sudo apt-get update

sudo apt-get install git-core curl zlib1g-dev

sudo apt-get install build-essential libssl-dev

sudo apt-get install libreadline-dev libyaml-dev libxml2-dev libxslt1-dev

sudo apt-get install libcurl4-openssl-dev

sudo apt-get install libffi-dev








Ruby 버전관리 시스템, Ruby Builder 설치

git clone git://github.com/sstephenson/rbenv.git .rbenv
export PATH="$HOME/.rbenv/bin:$PATH" ls >> ~/.bashrc

git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build

echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc

exec $SHELL

(왠지 모르겟지만 .bashrc파일에 들어가지 않아서 직접 cd .bashrc로 이동한 후 맨아래 추가)




Ruby설치
rbenv install 2.5.3

rbenv global 2.5

eval "$(rbenv init -)"

ruby -v


이렇게 뜨면 성공

gem install bundler






Rails 설치

1) curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
2)sudo apt-get install -y nodejs
3) gem install rails -v 5.2.3
4) rbenv rehash
5) rails -v


이렇게 뜨면 성공






PostgreSQL 설치

sudo sh -c "echo 'deb http://apt.postgresql.org/pub/repos/apt/ xenial-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.5 libpq-dev








PostgreSQL 실행

sudo service postgresql start









Ruby on Rails 프로젝트 clone

https://github.com/sowen2819의 https://github.com/sowen2819/Ruby.git Clone

git clone https://github.com/sowen2819/Ruby.git


이렇게 뜨면 성공



Rails 서버 실행하기

cd Ruby/myapp

gem update --system

bundle install

Rake db:create

Rake db:migrate    <- myapp/db/schema.rb의 테이블 생성

rails s    <- 서버 실행

rails server -d -b 0.0.0.0   <- 데몬서버 실행


Rails 데몬 서버 죽이기

netstat -nap | grep 3000

lsof -i TCP:3000


fuser -k -n tcp 3000 <- 3000번 포트 죽이기


자주만나는 에러

1)
Traceback (most recent call last):
        4: from bin/rails:3:in `<main>'
        3: from bin/rails:3:in `require_relative'
        2: from /home/ubuntu/Ruby/myapp/config/boot.rb:3:in `<top (required)>'
        1: from /home/ubuntu/.rbenv/versions/2.5.3/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require'
/home/ubuntu/.rbenv/versions/2.5.3/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in `require': cannot load such file -- bundler/setup (LoadError)

2)
Postgresql 다운로드후 socket어쩌고 하는 에러 - sudo service postgresql start
3)
Could not find gem 'pg (< 2.0, >= 0.18)' in any of the gem sources listed in your Gemfile. Run `bundle install` to install missing gems.


------------------------------------------------------------------------------------PostaSQL 명령 및 접속
\dt  <-테이블 조회
\du  <-유저 조회
\q   <- 데이터베이스 종료
\c 데이터베이스 접속

sudo su postgres
psql -d postgres -U postgres
\c myapp_development
------------------------------------------------------------------------


















Comments