맥 OS에서 rbenv를 사용하여 Ruby on Rails를 설치하는 방법

소개

Ruby on Rails는 웹 사이트 및 웹 애플리케이션을 만들고자 하는 개발자들 사이에서 인기 있는 애플리케이션 스택입니다. Ruby 프로그래밍 언어와 Rails 개발 프레임워크를 결합하여 앱 개발을 신속하고 효율적으로 할 수 있습니다.

루비와 레일스를 설치하는 한 가지 방법은 명령줄 도구인 rbenv를 사용하는 것입니다. rbenv를 사용하면 필요에 따라 루비의 작업 버전을 쉽게 전환할 수 있는 잘 제어되고 견고한 환경을 제공합니다.

rbenv는 애플리케이션별 루비 버전을 지정하는 기능을 제공하며 각 사용자에 대해 전역 루비를 변경하고 환경 변수를 사용하여 루비 버전을 재정의할 수 있습니다.

이 튜토리얼에서는 rbenv를 사용하여 로컬 macOS 기기에 Ruby on Rails를 설치하고 설정하는 방법을 알아볼 것입니다.

전제 조건

이 튜토리얼을 따라하기 위해 필요한 것은 다음과 같습니다:

단계 1 — rbenv 설치하기

이 단계에서는 rbenv를 설치하고 부팅 시 자동으로 시작되도록합니다. macOS에서는 이를 위해 Homebrew 패키지 관리자를 사용할 것입니다.

Homebrew를 사용하여 rbenv 패키지를 다운로드하려면 다음 명령을 실행하십시오:

  1. brew install rbenv

이렇게 하면 rbenv와 [ruby-build] (https://github.com/rbenv/ruby-build) 플러그인이 설치됩니다. 이 플러그인은 rbenv install 명령을 추가하여 Ruby의 새 버전을 설치하는 프로세스를 간소화합니다. 이는 여러 다른 종속성을 설치하고 시간이 걸릴 수 있습니다.

다음으로 터미널을 열 때 rbenv가 자동으로 로드되도록 ~/.bash_profile 파일에 eval "$(rbenv init -)" 명령을 추가하게 됩니다. 이를 위해 .bash_profile 파일을 nano이나 좋아하는 텍스트 편집기로 엽니다:

  1. nano .bash_profile

다음 줄을 파일에 추가합니다:

~/.bash_profile
eval "$(rbenv init -)"

파일을 저장하고 종료합니다.

다음으로 ~/.bash_profile 파일에 대한 변경 사항을 현재 쉘 세션에 적용합니다:

  1. source ~/.bash_profile

rbenv가 올바르게 설정되었는지 확인하려면 rbenv 명령에 대한 자세한 정보를 표시하는 type 명령을 사용합니다:

  1. type rbenv

터미널 창에는 다음과 같은 내용이 표시됩니다:

Output
rbenv is a function rbenv () { local command; command="${1:-}"; if [ "$#" -gt 0 ]; then shift; fi; case "$command" in rehash | shell) eval "$(rbenv "sh-$command" "$@")" ;; *) command rbenv "$command" "$@" ;; esac }

이 시점에서 rbenv와 ruby-build가 모두 컴퓨터에 설치되었습니다. 다음 단계에서는 명령줄에서 Ruby를 설치할 수 있게 됩니다.

단계 2 — Ruby 설치

이제 ruby-build 플러그인이 설치되었으므로 단일 명령을 사용하여 필요한 Ruby 버전을 설치할 수 있습니다. 이 단계에서는 Ruby 버전을 선택하고 컴퓨터에 설치한 후 설치를 확인합니다.

먼저 사용 가능한 Ruby 버전을 나열하려면 -l 플래그를 사용합니다. 최근에 나온 작은 버전은 명시되지 않았을 수도 있습니다. 예를 들어 이 명령의 출력이 Ruby 3.0.5를 나열하면 3.0.4도 설치할 수 있을 것입니다.

  1. rbenv install -l
Output
2.6.10 2.7.6 3.0.4 3.1.2 jruby-9.3.6.0 mruby-3.1.0 picoruby-3.0.0 rbx-5.0 truffleruby-22.1.0 truffleruby+graalvm-22.1.0

해당 명령의 출력은 설치할 수 있는 버전의 긴 목록이 될 것입니다.

이 튜토리얼에서는 Ruby 3.1.2를 설치할 것입니다:

  1. rbenv install 3.1.2

Ruby를 설치하는 것은 오랜 시간이 걸릴 수 있으므로 설치가 완료되기까지 시간이 걸릴 수 있습니다.

설치가 완료되면 global 하위 명령어를 사용하여 Ruby의 기본 버전으로 설정하십시오:

  1. rbenv global 3.1.2

Ruby가 올바르게 설치되었는지 확인하여 버전 번호를 확인하십시오:

  1. ruby -v

출력은 다음과 같을 것입니다:

Output
ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [x86_64-darwin21]

Ruby의 다른 버전을 설치하고 사용하려면 rbenv install 2.7.6rbenv global 2.7.6과 같은 다른 버전 번호로 rbenv 명령을 실행하십시오.

이제 Ruby의 버전 하나가 설치되어 기본 Ruby 버전이 설정되었습니다. 다음으로 Ruby 패키지와 라이브러리 또는 gems를 사용할 수 있도록 설정하여 Rails를 설치하겠습니다.

단계 3 — Gems 사용하기

Gems는 Ruby 라이브러리와 프로그램의 패키지로 Ruby 생태계 전반에 배포될 수 있습니다. 이러한 gems를 관리하기 위해 gem 명령을 사용합니다. 이 단계에서는 Rails 설치를 준비하기 위해 gem 명령을 구성하게 됩니다.

잼을 설치할 때 설치 프로세스는 로컬 문서를 생성합니다. 이는 각 잼의 설치 프로세스에 상당한 시간을 추가할 수 있으므로 ~/.gemrc이라는 파일을 만들어 로컬 문서 생성 기능을 끌 수 있습니다.

  1. echo "gem: --no-document" > ~/.gemrc

이 작업을 완료하면 gem 명령어를 사용하여 프로젝트의 잼 종속성을 관리하는 도구인 Bundler를 설치합니다. 이것은 Rails가 올바르게 작동하려면 필요합니다:

  1. gem install bundler

다음과 같은 출력이 표시됩니다:

Output
Fetching: bundler-2.3.18.gem Successfully installed bundler-2.3.18 1 gem installed

gem env 명령어를 사용하여 잼의 환경 및 구성에 대한 자세한 내용을 알 수 있습니다. 설치된 잼의 위치를 확인하려면 home 인수를 사용합니다. 다음과 같이:

  1. gem env home

다음과 유사한 출력이 표시됩니다:

/Users/sammy/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0

이제 잼 워크플로를 설정하고 살펴보았으므로 Rails를 설치할 수 있습니다.

단계 4 — Rails 설치

Rails를 설치하려면 gem install 명령어를 사용합니다:

  1. gem install rails

gem 명령어는 지정한 잼뿐만 아니라 모든 종속성을 설치합니다. Rails는 복잡한 웹 개발 프레임워크이며 많은 종속성이 있으므로 프로세스는 시간이 걸릴 것입니다. 결국 Rails와 해당 종속성이 설치되었다는 메시지가 표시됩니다:

Output
... Successfully installed rails-7.0.3.1 35 gems installed

노트: 만약 다른 버전의 Rails를 설치하고 싶다면, 유효한 Rails 버전을 나열하는 검색을 수행하여 긴 목록을 출력할 수 있습니다. 그런 다음 -v 플래그를 사용하여 특정 버전을 설치할 수 있습니다. 예를 들어, 4.2.7를 설치하려면 다음과 같이 합니다:

  1. gem search '^rails$' --all
  2. gem install rails -v 4.2.7

rbenv는 shims 또는 호출을 가로채고 변경하거나 리디렉션하는 라이브러리들의 디렉토리를 생성하여 작동합니다. 이 경우 shims는 현재 활성화된 Ruby 버전이 사용하는 파일들로 Ruby 명령을 가리킵니다. rehash 하위 명령을 통해 rbenv는 해당 디렉토리에 shims를 유지하여 서버에 설치된 모든 Ruby 버전에 걸쳐 모든 Ruby 명령과 일치하도록 합니다. 새로운 Ruby 버전이나 Rails와 같은 명령을 제공하는 gem을 설치할 때마다 rehash를 사용해야 합니다.

shims 디렉토리를 다시 해시하는 명령은 다음과 같습니다:

  1. rbenv rehash

Rails 설치를 확인하려면 다음 명령으로 버전을 출력하세요:

  1. rails -v

설치된 Rails 버전이 표시됩니다:

Output
Rails 7.0.3.1

Rails가 성공적으로 설치되었으므로 Ruby on Rails 설치를 테스트하고 웹 애플리케이션을 개발하기 시작할 수 있습니다. 다음 단계에서는 rbenv와 Ruby를 업데이트하고 제거하는 방법을 배우게 됩니다.

단계 5 — rbenv와 Ruby 업데이트 및 제거

유지보수 프로젝트 시 필요한 경우 업데이트 및 제거하는 방법을 알아두면 유용합니다. 이 단계에서는 rbenv를 업그레이드한 다음 기계에서 Ruby와 rbenv를 제거하는 방법을 살펴보겠습니다.

다음 명령을 실행하여 Homebrew를 사용하여 rbenv 및 ruby-build를 업그레이드할 수 있습니다:

  1. brew upgrade rbenv ruby-build

만약 rbenv 또는 ruby-build를 업데이트해야 한다면 Homebrew가 자동으로 처리합니다. 설정이 이미 최신 상태인 경우 다음과 유사한 출력을 받게 될 것입니다:

Output
Warning: rbenv 1.2.0 already installed Warning: ruby-build 20220713 already installed

이로써 rbenv의 가장 최신 버전을 사용하게 됩니다.

Ruby의 추가 버전을 다운로드할 때 ~/.rbenv/versions 디렉토리에 원하지 않는 버전이 누적될 수 있습니다. ruby-build 플러그인의 uninstall 하위 명령을 사용하여 이전 버전을 제거할 수 있습니다.

예를 들어, 다음 명령을 실행하여 Ruby 버전 2.1.3을 제거할 수 있습니다:

  1. rbenv uninstall 2.1.3

rbenv uninstall 명령을 사용하여 현재 사용 중인 것보다 많은 Ruby 버전을 정리할 수 있습니다.

rbenv를 더 이상 사용하지 않기로 결정했다면 시스템에서 제거할 수 있습니다.

이를 위해 먼저 편집기에서 ~/.bash_profile 파일을 엽니다:

  1. nano ~/.bash_profile

파일에서 rbenv가 터미널을 열 때 시작되지 않도록 다음 라인을 찾아 제거합니다:

~/.bash_profile
...
eval "$(rbenv init -)"

이 라인을 삭제한 후 파일을 저장하고 편집기를 종료합니다.

다음 명령을 실행하여 변경 사항을 적용합니다:

  1. source ~/.bash_profile

이제 다음 명령을 사용하여 rbenv 및 모든 설치된 Ruby 버전을 제거합니다:

  1. rm -rf `rbenv root`

마침내, Homebrew를 사용하여 rbenv 패키지 자체를 제거하십시오:

  1. brew uninstall rbenv

rbenv 버전을 확인하여 제대로 제거되었는지 확인하십시오:

  1. rbenv -v

다음 출력이 표시됩니다:

Output
-bash: /usr/local/bin/rbenv: No such file or directory

이는 기기에서 rbenv를 성공적으로 제거했다는 것을 의미합니다.

결론

이 튜토리얼에서는 macOS에 rbenv로 Ruby on Rails를 설치했습니다. 여기서는 당사의 Ruby로 코딩하는 방법 시리즈를 통해 Ruby 코딩에 대해 더 배울 수 있습니다. 또한 응용 프로그램에 대한 확장성, 중앙 집중화 및 안정성을 제공하는 기본 sqlite3 데이터베이스 대신 PostgreSQL을 사용하는 방법을 탐색할 수도 있습니다.

Source:
https://www.digitalocean.com/community/tutorials/how-to-install-ruby-on-rails-with-rbenv-on-macos