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
Post a Comment