Rails 7.2의 개발 컨테이너(Devcontainer) 지원으로 로컬 Ruby 없이 Rails 앱 시작하기

Rails Without Ruby

작성자
Ruby Weekly
발행일
2025년 09월 10일

핵심 요약

  • 1 Rails 7.2는 개발 컨테이너(devcontainer)를 기본 지원하여 Ruby, Node, DB 등 복잡한 초기 개발 환경 설정을 자동화하고 개발자의 온보딩 과정을 간소화합니다.
  • 2 새로운 Rails 앱은 `rails new myapp --devcontainer`로, 기존 앱은 `rails devcontainer` 명령으로 손쉽게 개발 컨테이너 환경을 구축할 수 있으며, 로컬 Ruby 설치가 필요 없습니다.
  • 3 `rails-new` 독립 실행 파일 또는 Docker 명령을 활용하여 로컬에 Ruby가 없어도 Rails 앱을 생성하고, VS Code의 "Reopen in Container" 기능을 통해 즉시 개발을 시작할 수 있습니다.

도입

Rails 7.2 버전부터 개발 컨테이너(devcontainer)에 대한 네이티브 지원이 추가되어 Rails 개발 환경 설정 방식에 큰 변화가 생겼습니다. 기존에는 새로운 Rails 프로젝트를 시작할 때 Ruby 버전 관리, 시스템 의존성, Node.js 및 JavaScript 번들러, PostgreSQL과 같은 데이터베이스 설정 등 복잡하고 시간이 많이 소요되는 초기 작업이 필수적이었습니다. 특히 초보 개발자에게는 이러한 환경 설정 과정이 큰 진입 장벽으로 작용했습니다. 개발 컨테이너는 이러한 설정의 고통을 해소하여, 로컬 머신에 Ruby를 포함한 어떤 개발 환경도 설치할 필요 없이 즉시 개발을 시작할 수 있게 해줍니다.

Rails 7.2의 개발 컨테이너(Devcontainer) 지원

Rails 7.2는 개발 컨테이너를 기본 지원하여 Ruby, Node, DB 등 복잡한 개발 환경 설정을 Docker 기반으로 자동화합니다. * 새로운 앱: rails new myapp --devcontainer 명령으로 .devcontainer 파일이 자동 생성되어 호스트 Ruby 없이 즉시 실행 가능합니다. * 기존 앱: rails devcontainer 명령으로 기존 프로젝트에 개발 컨테이너 환경을 추가합니다.

실행 요구사항 및 로컬 Ruby 없는 앱 생성

개발 컨테이너 실행에는 호스트에 Ruby, Node, DB 설치 없이 컨테이너 런타임(Docker Desktop, Colima, OrbStack 등)과 Dev Containers 확장이 설치된 VS Code만 필요합니다. VS Code는 .devcontainer 폴더를 인식하여 “컨테이너에서 다시 열기” 옵션으로 완벽한 Rails 환경 진입을 돕습니다.

로컬 Ruby 없이 Rails 앱을 생성하는 두 가지 방법이 있습니다. * rails-new 독립 실행형 생성기: 전역 Rails 설치 없이 앱을 생성하는 커맨드라인 도구입니다. 이를 설치한 후 rails-new myapp --devcontainer 명령으로 Docker를 통해 앱을 생성합니다. * Docker만으로 앱 생성: 직접 Docker 컨테이너를 시작하고, 그 안에서 Rails를 설치 후 rails new myapp --devcontainer를 실행하여 앱을 생성합니다. 이후 VS Code에서 “Reopen in Container” 기능을 통해 개발을 시작할 수 있습니다.

결론

개발 컨테이너는 Rails 개발 환경 설정에 대한 우리의 인식을 근본적으로 변화시키고 있습니다. 이제 각 개발자가 Ruby 버전, Node, 데이터베이스, 네이티브 의존성 문제로 씨름할 필요 없이, 어디서든 작동하는 단일하고 재현 가능한 환경을 정의할 수 있게 되었습니다. 팀에게는 "내 컴퓨터에서는 되는데"라는 문제가 사라지고, 새로운 개발자의 온보딩은 저장소를 클론하고 "컨테이너에서 다시 열기"를 클릭하는 것만큼 쉬워집니다. 개인 개발자에게는 Rails를 처음 시도하거나 새로운 릴리스를 실험할 때 로컬 시스템을 오염시키거나 기존 설정을 망가뜨릴 걱정 없이 몇 분 만에 완벽하게 격리된 환경을 구축할 수 있게 해줍니다. 결론적으로, 개발 컨테이너를 통해 로컬에 Ruby를 설치하지 않고도 Rails를 실행할 수 있게 되어, Rails의 접근성, 일관성, 그리고 시작 속도가 그 어느 때보다 향상되었습니다.

댓글 0

댓글 작성

0/1000
정중하고 건설적인 댓글을 작성해 주세요.

아직 댓글이 없습니다

첫 번째 댓글을 작성해보세요!