CentOS7에 Rails 5.2.3 + MariaDB 10.4 설치
RVM에 Ruby 2.5.5 설치
gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 \
7D2BAF1CF37B13E2069D6956105BD0E739499BDB
에서 GPG 키를 설치할 수 있어야하지만 GPG 버전 문제로 인해 할 수 없으므로 다음 명령을 실행하십시오.
command curl -sSL https://rvm.io/mpapis.asc | gpg2 --import -
RVM을 설치.
\curl -sSL https://get.rvm.io | bash -s stable
그런 다음 Ruby 2.5를 설치합니다.
rvm install ruby-2.5
버전을 확인.
$ ruby --version
ruby 2.5.5p157 (2019-03-15 revision 67260) [x86_64-linux]
~/.gemrc로 rdoc을 설치하지 마십시오.
~/.gemrcinstall: --no-document
update: --no-document
bundler를 설치.
gem install bundler
MariaDB 10.4 설치
CentOS7 표준 MariaDB 5.5가 설치된 경우 먼저 제거합니다.
sudo yum -y remove mariadb-*
다음에 MariaDB Package Repository Setup and Usage 에 기재되어 있는 커멘드를 실행해, MariaDB 의 리포지터리 파일을 작성합니다.
curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
yum에서 MariaDB 10.4를 설치합니다.
sudo yum -y install MariaDB-server MariaDB-client MariaDB-devel
다음 rpm이 설치됩니다.
$ rpm -qa | grep -i mariadb | sort
MariaDB-client-10.4.6-1.el7.centos.x86_64
MariaDB-common-10.4.6-1.el7.centos.x86_64
MariaDB-compat-10.4.6-1.el7.centos.x86_64
MariaDB-devel-10.4.6-1.el7.centos.x86_64
MariaDB-server-10.4.6-1.el7.centos.x86_64
$ rpm -qa | grep -i galera
galera-4-26.4.2-1.rhel7.el7.centos.x86_64
MariaDB service를 시작합니다.
sudo systemctl start mariadb
Ruby on Rails 5.2.3 설치
다음과 같이 Gemfile을 만들고,
Gemfilesource 'https://rubygems.org'
gem 'rails', '5.2.3'
gem 'mysql2'
bundle install
를 실행합니다.
make: *** [mysql2.so] Error 1
make failed, exit code 2
Gem files will remain installed in /home/vagrant/.rvm/gems/ruby-2.5.5/gems/mysql2-0.5.2 for inspection.
Results logged to
/home/vagrant/.rvm/gems/ruby-2.5.5/extensions/x86_64-linux/2.5.0/mysql2-0.5.2/gem_make.out
An error occurred while installing mysql2 (0.5.2), and Bundler cannot continue.
Make sure that `gem install mysql2 -v '0.5.2' --source 'https://rubygems.org/'` succeeds before
bundling.
In Gemfile:
mysql2
오류로 인해 mysql2
빌드가 실패합니다.
sudo yum -y install MariaDB-shared
에서 MariaDB-shared를 설치하면 해결되었습니다.
ToDo 앱 만들기
다음 명령을 실행하여 새 Rails 앱을 만듭니다.
rails new todo
cd todo
디폴트라면 데이터베이스에 SQLite3 를 사용하게 되어 있으므로, config/database.yml
의 development 데이타베이스 설정을 이하와 같이 수정합니다.
development:
adapter: mysql2
encoding: utf8
reconnect: false
database: development
pool: 5
username: rails5
password: password
host: localhost
MariaDB Server는 10.4부터 unix_socket plugin이 기본 인증 방법이므로 mysql_native_password로 인증 할 수 있도록 Rails에서 연결 사용자를 만듭니다.
MariaDB [(none)]> GRANT ALL ON development.* TO rails5@'localhost' IDENTIFIED BY 'password';
MariaDB [(none)]> GRANT ALL ON production.* TO rails5@'localhost';
(사용자 이름, 암호는 적절하게 변경하십시오)
Gemfile의 끝에 gem 'mysql2'
를 추가,
echo "gem 'mysql2'" >> Gemfile
17행째 부근의
Gemfile# gem 'mini_racer', platforms: :ruby
코멘트를 제거하고,
Gemfilegem 'mini_racer', platforms: :ruby
합니다.
scaffold 로 어플리케이션의 토대를 생성합니다.
bundle install
rails generate scaffold tasks title:string content:text due:date
데이터베이스 작성, 테이블 작성, Rails 서버를 시작합니다.
$ rake db:create
Created database 'development'
$ rake db:migrate
== 20190705063555 CreateTasks: migrating ======================================
-- create_table(:tasks)
-> 0.0022s
== 20190705063555 CreateTasks: migrated (0.0023s) =============================
$ rails s -b 0.0.0.0
=> Booting Puma
=> Rails 5.2.3 application starting in development
=> Run `rails server -h` for more startup options
Puma starting in single mode...
* Version 3.12.1 (ruby 2.5.5-p157), codename: Llamas in Pajamas
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://0.0.0.0:3000
Use Ctrl-C to stop
서버의 port 3000 에 브라우저로 액세스 해 다음과 같이 태스크 신규 작성을 할 수 있으면 문제 없을 것입니다.
Reference
이 문제에 관하여(CentOS7에 Rails 5.2.3 + MariaDB 10.4 설치), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/cherubim1111/items/5b201e6444eb13660709
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 \
7D2BAF1CF37B13E2069D6956105BD0E739499BDB
command curl -sSL https://rvm.io/mpapis.asc | gpg2 --import -
\curl -sSL https://get.rvm.io | bash -s stable
rvm install ruby-2.5
$ ruby --version
ruby 2.5.5p157 (2019-03-15 revision 67260) [x86_64-linux]
install: --no-document
update: --no-document
gem install bundler
CentOS7 표준 MariaDB 5.5가 설치된 경우 먼저 제거합니다.
sudo yum -y remove mariadb-*
다음에 MariaDB Package Repository Setup and Usage 에 기재되어 있는 커멘드를 실행해, MariaDB 의 리포지터리 파일을 작성합니다.
curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
yum에서 MariaDB 10.4를 설치합니다.
sudo yum -y install MariaDB-server MariaDB-client MariaDB-devel
다음 rpm이 설치됩니다.
$ rpm -qa | grep -i mariadb | sort
MariaDB-client-10.4.6-1.el7.centos.x86_64
MariaDB-common-10.4.6-1.el7.centos.x86_64
MariaDB-compat-10.4.6-1.el7.centos.x86_64
MariaDB-devel-10.4.6-1.el7.centos.x86_64
MariaDB-server-10.4.6-1.el7.centos.x86_64
$ rpm -qa | grep -i galera
galera-4-26.4.2-1.rhel7.el7.centos.x86_64
MariaDB service를 시작합니다.
sudo systemctl start mariadb
Ruby on Rails 5.2.3 설치
다음과 같이 Gemfile을 만들고,
Gemfilesource 'https://rubygems.org'
gem 'rails', '5.2.3'
gem 'mysql2'
bundle install
를 실행합니다.
make: *** [mysql2.so] Error 1
make failed, exit code 2
Gem files will remain installed in /home/vagrant/.rvm/gems/ruby-2.5.5/gems/mysql2-0.5.2 for inspection.
Results logged to
/home/vagrant/.rvm/gems/ruby-2.5.5/extensions/x86_64-linux/2.5.0/mysql2-0.5.2/gem_make.out
An error occurred while installing mysql2 (0.5.2), and Bundler cannot continue.
Make sure that `gem install mysql2 -v '0.5.2' --source 'https://rubygems.org/'` succeeds before
bundling.
In Gemfile:
mysql2
오류로 인해 mysql2
빌드가 실패합니다.
sudo yum -y install MariaDB-shared
에서 MariaDB-shared를 설치하면 해결되었습니다.
ToDo 앱 만들기
다음 명령을 실행하여 새 Rails 앱을 만듭니다.
rails new todo
cd todo
디폴트라면 데이터베이스에 SQLite3 를 사용하게 되어 있으므로, config/database.yml
의 development 데이타베이스 설정을 이하와 같이 수정합니다.
development:
adapter: mysql2
encoding: utf8
reconnect: false
database: development
pool: 5
username: rails5
password: password
host: localhost
MariaDB Server는 10.4부터 unix_socket plugin이 기본 인증 방법이므로 mysql_native_password로 인증 할 수 있도록 Rails에서 연결 사용자를 만듭니다.
MariaDB [(none)]> GRANT ALL ON development.* TO rails5@'localhost' IDENTIFIED BY 'password';
MariaDB [(none)]> GRANT ALL ON production.* TO rails5@'localhost';
(사용자 이름, 암호는 적절하게 변경하십시오)
Gemfile의 끝에 gem 'mysql2'
를 추가,
echo "gem 'mysql2'" >> Gemfile
17행째 부근의
Gemfile# gem 'mini_racer', platforms: :ruby
코멘트를 제거하고,
Gemfilegem 'mini_racer', platforms: :ruby
합니다.
scaffold 로 어플리케이션의 토대를 생성합니다.
bundle install
rails generate scaffold tasks title:string content:text due:date
데이터베이스 작성, 테이블 작성, Rails 서버를 시작합니다.
$ rake db:create
Created database 'development'
$ rake db:migrate
== 20190705063555 CreateTasks: migrating ======================================
-- create_table(:tasks)
-> 0.0022s
== 20190705063555 CreateTasks: migrated (0.0023s) =============================
$ rails s -b 0.0.0.0
=> Booting Puma
=> Rails 5.2.3 application starting in development
=> Run `rails server -h` for more startup options
Puma starting in single mode...
* Version 3.12.1 (ruby 2.5.5-p157), codename: Llamas in Pajamas
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://0.0.0.0:3000
Use Ctrl-C to stop
서버의 port 3000 에 브라우저로 액세스 해 다음과 같이 태스크 신규 작성을 할 수 있으면 문제 없을 것입니다.
Reference
이 문제에 관하여(CentOS7에 Rails 5.2.3 + MariaDB 10.4 설치), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/cherubim1111/items/5b201e6444eb13660709
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
source 'https://rubygems.org'
gem 'rails', '5.2.3'
gem 'mysql2'
make: *** [mysql2.so] Error 1
make failed, exit code 2
Gem files will remain installed in /home/vagrant/.rvm/gems/ruby-2.5.5/gems/mysql2-0.5.2 for inspection.
Results logged to
/home/vagrant/.rvm/gems/ruby-2.5.5/extensions/x86_64-linux/2.5.0/mysql2-0.5.2/gem_make.out
An error occurred while installing mysql2 (0.5.2), and Bundler cannot continue.
Make sure that `gem install mysql2 -v '0.5.2' --source 'https://rubygems.org/'` succeeds before
bundling.
In Gemfile:
mysql2
sudo yum -y install MariaDB-shared
다음 명령을 실행하여 새 Rails 앱을 만듭니다.
rails new todo
cd todo
디폴트라면 데이터베이스에 SQLite3 를 사용하게 되어 있으므로,
config/database.yml
의 development 데이타베이스 설정을 이하와 같이 수정합니다.
development:
adapter: mysql2
encoding: utf8
reconnect: false
database: development
pool: 5
username: rails5
password: password
host: localhost
MariaDB Server는 10.4부터 unix_socket plugin이 기본 인증 방법이므로 mysql_native_password로 인증 할 수 있도록 Rails에서 연결 사용자를 만듭니다.
MariaDB [(none)]> GRANT ALL ON development.* TO rails5@'localhost' IDENTIFIED BY 'password';
MariaDB [(none)]> GRANT ALL ON production.* TO rails5@'localhost';
(사용자 이름, 암호는 적절하게 변경하십시오)
Gemfile의 끝에
gem 'mysql2'
를 추가,echo "gem 'mysql2'" >> Gemfile
17행째 부근의
Gemfile
# gem 'mini_racer', platforms: :ruby
코멘트를 제거하고,
Gemfile
gem 'mini_racer', platforms: :ruby
합니다.
scaffold 로 어플리케이션의 토대를 생성합니다.
bundle install
rails generate scaffold tasks title:string content:text due:date
데이터베이스 작성, 테이블 작성, Rails 서버를 시작합니다.
$ rake db:create
Created database 'development'
$ rake db:migrate
== 20190705063555 CreateTasks: migrating ======================================
-- create_table(:tasks)
-> 0.0022s
== 20190705063555 CreateTasks: migrated (0.0023s) =============================
$ rails s -b 0.0.0.0
=> Booting Puma
=> Rails 5.2.3 application starting in development
=> Run `rails server -h` for more startup options
Puma starting in single mode...
* Version 3.12.1 (ruby 2.5.5-p157), codename: Llamas in Pajamas
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://0.0.0.0:3000
Use Ctrl-C to stop
서버의 port 3000 에 브라우저로 액세스 해 다음과 같이 태스크 신규 작성을 할 수 있으면 문제 없을 것입니다.
Reference
이 문제에 관하여(CentOS7에 Rails 5.2.3 + MariaDB 10.4 설치), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/cherubim1111/items/5b201e6444eb13660709텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)