웹 애플리케이션을 운영하다 보면 ‘우리 Rails 버전 언제까지 지원되지?’라는 질문을 마주하게 됩니다. 특히 보안 패치가 끊기는 시점을 놓치면 큰 문제가 발생할 수 있죠. 오늘은 Ruby on Rails의 지원종료(End of Life, EOL) 일정을 정확하게 정리해드리겠습니다.
1. Ruby on Rails란 무엇인가요?
Ruby on Rails(줄여서 Rails 또는 RoR)는 Ruby 언어로 작성된 서버 사이드 웹 애플리케이션 프레임워크입니다. 2004년 David Heinemeier Hansson이 Basecamp 프로젝트를 진행하면서 처음 세상에 공개했고, 2025년 현재 20년이 넘는 시간 동안 수많은 웹 서비스의 백본 역할을 해오고 있습니다.
GitHub, Shopify, Airbnb, Twitch 같은 유명 서비스들이 Rails로 구축되었고, 지금도 전 세계 개발자들이 Rails를 사용해 효율적으로 웹 애플리케이션을 개발하고 있습니다. ‘설정보다 관례(Convention over Configuration)’와 ‘DRY(Don’t Repeat Yourself)’ 원칙을 강조하며, 개발자가 비즈니스 로직에 더 집중할 수 있도록 도와주는 것이 Rails의 가장 큰 장점입니다.
Rails는 MVC(Model-View-Controller) 패턴을 기반으로 하며, Active Record(ORM), Action Pack(라우팅 및 컨트롤러), Action View(뷰 템플릿), Active Job(백그라운드 작업), Action Cable(WebSocket) 등 다양한 컴포넌트로 구성되어 있습니다.
2. Rails 7.2부터 달라진 새로운 지원 정책
2024년 10월 15일, Rails 팀은 중요한 발표를 했습니다. Rails 7.2부터 완전히 새로운 유지보수 정책(Maintenance Policy)이 적용된다는 내용이었습니다.
새로운 정책의 핵심:
- 버그 수정 지원(Bug Fixes): 마이너 버전 출시일로부터 1년
- 보안 패치 지원(Security Fixes): 마이너 버전 출시일로부터 2년
- 이후 완전한 지원종료(End of Life, EOL)
예를 들어, Rails 8.0.0이 2024년 11월 7일에 출시되었다면:
- 버그 수정: 2025년 11월 7일까지
- 보안 패치: 2026년 11월 7일까지
- EOL: 2026년 11월 7일
이 정책은 Rails 7.2 이후 버전에만 적용되며, 그 이전 버전들은 기존의 유연한 지원 정책을 따릅니다.
공식 정책 문서: Ruby on Rails Maintenance Policy
3. 현재 지원 중인 Rails 버전별 상세 일정
2025년 10월 기준, 다음은 각 Rails 버전의 정확한 지원 일정입니다.
현재 지원 중인 버전 (Active Support)
버전 | 출시일 | 버그 수정 종료 | 보안 지원 종료 (EOL) | 최신 패치 버전 | 상태 |
---|---|---|---|---|---|
8.0.x | 2024-11-07 | 2025-11-07 | 2026-11-07 | 8.0.3 | 🟢 완전 지원 |
7.2.x | 2024-08-09 | 2025-08-09 | 2026-08-09 | 7.2.2.2 | 🟢 완전 지원 |
7.1.x | 2023-10-05 | 2024-10-05 (종료) | 2025-10-01 | 7.1.5.2 | 🟡 보안 지원만 |
7.0.x | 2021-12-15 | 2024-10-15 (종료) | 2025-04-01 | 7.0.8.7 | 🟡 보안 지원만 |
지원 종료된 버전 (End of Life)
버전 | 출시일 | 버그 수정 종료 | EOL 날짜 | 최종 버전 | 상태 |
---|---|---|---|---|---|
6.1.x | 2020-12-09 | 2023-10-01 | 2024-10-01 | 6.1.7.10 | 🔴 EOL |
6.0.x | 2019-08-16 | 2022-06-01 | 2023-06-01 | 6.0.6.1 | 🔴 EOL |
5.2.x | 2018-04-09 | 2021-06-01 | 2022-06-01 | 5.2.8.1 | 🔴 EOL |
5.1.x | 2017-04-27 | 2018-08-25 | 2019-08-25 | 5.1.7 | 🔴 EOL |
5.0.x | 2016-06-30 | 2017-04-01 | 2018-04-01 | 5.0.7.2 | 🔴 EOL |
4.2.x | 2014-12-19 | 2016-06-30 | 2017-04-27 | 4.2.11.3 | 🔴 EOL |
4.1.x | 2014-04-08 | 2015-06-25 | 2016-04-08 | 4.1.16 | 🔴 EOL |
4.0.x | 2013-06-25 | 2014-12-19 | 2015-06-25 | 4.0.13 | 🔴 EOL |
3.2.x | 2012-01-20 | 2014-06-25 | 2016-06-30 | 3.2.22.5 | 🔴 EOL |
3.1.x | 2011-08-31 | 2012-06-01 | 2013-06-25 | 3.1.12 | 🔴 EOL |
3.0.x | 2010-08-29 | 2011-06-01 | 2012-06-25 | 3.0.20 | 🔴 EOL |
2.3.x | 2009-03-15 | 2011-06-01 | 2013-06-25 | 2.3.18 | 🔴 EOL |
참고: Rails 4.2 이후부터 정식으로 EOL 날짜가 명확히 공표되기 시작했습니다. 그 이전 버전들의 EOL 날짜는 다음 메이저 버전 출시 시점을 기준으로 추정됩니다.
출처: endoflife.date/rails, RubyGems Rails Versions, Rails GitHub
4. 버전별로 자세히 살펴보는 지원 현황
Rails 8.0 – 최신 메이저 릴리스
2024년 11월 7일에 출시된 Rails 8.0은 현재 가장 최신 버전입니다. Rails World 2024에서 공개되었으며, Kamal 2를 통한 배포 간소화, Solid Queue, Solid Cache 등 ‘Solid’ 시리즈 통합이 주요 특징입니다.
- 버그 수정: 2025년 11월 7일까지
- 보안 지원: 2026년 11월 7일까지
- 최신 버전: 8.0.3 (2025년 3월 기준)
새 프로젝트를 시작한다면 Rails 8.0을 선택하는 것이 가장 좋습니다.
Rails 7.2 – 안정적인 최신 버전
2024년 8월 9일에 출시된 Rails 7.2는 새로운 유지보수 정책이 처음 적용된 버전입니다.
- 버그 수정: 2025년 8월 9일까지
- 보안 지원: 2026년 8월 9일까지
- 최신 버전: 7.2.2.2 (2025년 8월 기준)
Rails 8.0으로 바로 업그레이드하기 부담스럽다면, 7.2는 매우 안정적인 선택지입니다.
Rails 7.1 – 보안 지원만 제공 중
2023년 10월 5일에 출시된 Rails 7.1은 현재 버그 수정은 종료되고 보안 패치만 제공되고 있습니다.
- 버그 수정: 2024년 10월 종료
- 보안 지원: 2025년 10월 1일까지
- 최신 버전: 7.1.5.2
2025년 10월 이후에는 보안 패치도 중단되므로, 늦어도 2025년 9월까지는 7.2 이상으로 업그레이드를 계획해야 합니다.
Rails 7.0 – 곧 EOL 도래
2021년 12월 15일에 출시된 Rails 7.0은 원래 2023년에 EOL 예정이었으나, 새로운 정책 전환 기간으로 인해 지원이 연장되었습니다.
- 버그 수정: 2024년 10월 종료
- 보안 지원: 2025년 4월 1일까지 (연장됨)
- 최신 버전: 7.0.8.7
중요: 2025년 4월 이후에는 어떠한 보안 패치도 제공되지 않습니다. Rails 7.0을 사용 중이라면 지금 바로 업그레이드 계획을 세워야 합니다.
공식 발표: New Rails maintenance policy and end of maintenance announcements
Rails 6.1 – 이미 EOL
2020년 12월에 출시된 Rails 6.1은 2024년 10월 1일 공식 EOL에 도달했습니다. Rails 팀은 정책 전환 과정에서 한 차례 추가 보안 패치(6.1.7.9, 6.1.7.10)를 제공했지만, 이제는 완전히 지원이 종료되었습니다.
- 출시: 2020년 12월 9일
- EOL: 2024년 10월 1일
- 최종 버전: 6.1.7.10
- 주요 기능: 데이터베이스별 연결 전환, 수평 데이터베이스 샤딩, Delegated Types
Rails 6.1을 여전히 사용 중이라면, 지금 당장 업그레이드가 필요합니다.
Rails 6.0과 그 이전 버전들 – 레거시 버전
버전 | 주요 특징 | EOL | 비고 |
---|---|---|---|
6.0 | Webpack 기본 탑재, Action Mailbox, 병렬 테스트 | 2023년 6월 | 4년 전 EOL |
5.2 | ActiveStorage, Redis 캐시 저장소 | 2022년 6월 | 5년 전 EOL |
5.1 | Yarn, Webpack 지원, 시스템 테스트 | 2019년 8월 | 8년 전 EOL |
5.0 | Action Cable, API 모드, Turbolinks 5 | 2018년 4월 | 9년 전 EOL |
4.2 | Active Job, 비동기 이메일 | 2017년 4월 | 10년 전 EOL |
4.1 | Spring, Variants, Enums | 2016년 4월 | 11년 전 EOL |
4.0 | Strong Parameters, Turbolinks | 2015년 6월 | 12년 전 EOL |
3.2 | 빠른 개발 모드, Asset Pipeline 개선 | 2016년 6월 | 11년 전 EOL |
3.1 | Asset Pipeline, CoffeeScript, Sass | 2013년 6월 | 14년 전 EOL |
3.0 | Merb 통합, Bundler 도입 | 2012년 6월 | 15년 전 EOL |
2.3 | 템플릿, 엔진, Rack 통합 | 2013년 6월 | 14년 전 EOL |
경고: 이 버전들은 모두 오래 전에 지원이 종료되었으며, 심각한 보안 위험에 노출되어 있습니다. 이 중 하나라도 사용 중이라면 즉시 최신 버전으로 업그레이드해야 합니다.
5. EOL 이후 어떤 문제가 발생하나요?
Rails 버전이 EOL에 도달하면 다음과 같은 문제들이 발생합니다:
보안 취약점 노출 가장 심각한 문제입니다. 새로운 보안 취약점이 발견되어도 공식 패치가 제공되지 않습니다. SQL 인젝션, 원격 코드 실행(RCE), 크로스 사이트 스크립팅(XSS) 같은 치명적인 취약점에 무방비 상태가 됩니다.
컴플라이언스 문제 HIPAA, PCI DSS, SOC2, GDPR 등 규정을 준수해야 하는 서비스의 경우, 지원 종료된 소프트웨어 사용은 감사에서 실패하거나 벌금을 받을 수 있습니다.
호환성 문제 최신 Ruby 버전, 데이터베이스, 웹 서버, 브라우저와의 호환성 문제가 발생할 수 있습니다. 새로운 gem 라이브러리들도 오래된 Rails 버전을 지원하지 않는 경우가 많아집니다.
채용 및 유지보수 어려움 최신 기술을 배우고 싶어하는 개발자들은 레거시 버전을 기피하게 되고, 결과적으로 좋은 개발자를 채용하거나 유지하기 어려워집니다.
6. 업그레이드 로드맵 전략
현재 사용 중인 버전에 따라 다음과 같은 전략을 권장합니다:
버전별 업그레이드 전략 요약표
현재 버전 | 긴급도 | 권장 업그레이드 경로 | 목표 완료 시점 |
---|---|---|---|
Rails 2.x-3.x | 🔴 최긴급 | 2.x → 3.2 → 4.2 → 5.2 → 6.1 → 7.0 → 7.2 | 즉시 시작 (수개월 소요) |
Rails 4.x | 🔴 최긴급 | 4.x → 5.2 → 6.1 → 7.0 → 7.2 | 즉시 시작 (2-3개월) |
Rails 5.x | 🔴 긴급 | 5.x → 6.1 → 7.0 → 7.2 | 즉시 시작 (1-2개월) |
Rails 6.0-6.1 | 🔴 긴급 | 6.x → 7.0 → 7.2 | 2025년 1월 |
Rails 7.0 | 🟠 높음 | 7.0 → 7.1 → 7.2 또는 8.0 | 2025년 3월 |
Rails 7.1 | 🟡 중간 | 7.1 → 7.2 또는 8.0 | 2025년 9월 |
Rails 7.2 | 🟢 안전 | 정기 패치 업데이트만 | – |
Rails 8.0 | 🟢 최신 | 정기 패치 업데이트만 | – |
상세 업그레이드 전략
Rails 5.x 이하를 사용 중인 경우 극도로 긴급한 상황입니다. 이미 EOL된 지 수년이 지났으며 알려진 보안 취약점들이 패치되지 않은 상태입니다.
단계적 접근 (권장):
- 먼저 테스트 환경 구축: 충분한 테스트 커버리지 확보 (최소 60% 이상)
- 한 단계씩 업그레이드: Rails 4.x → 5.2 → 6.1 → 7.0 → 7.2
- 각 단계마다 안정화: 최소 1-2주 테스트 기간 확보
- 의존성 gem 업데이트: 각 Rails 버전에 맞는 호환 gem으로 교체
또는 전면 재작성 고려:
- Rails 버전이 너무 오래되었다면 (Rails 3.x 이하)
- 코드 품질이 낮고 테스트가 부족하다면
- 비즈니스 로직이 많이 변경되었다면
Rails 6.1 이하를 사용 중인 경우 즉시 업그레이드가 필요합니다. 단계적 접근이 가장 안전합니다:
- Rails 6.1 → Rails 7.0 (Ruby 2.7+ 필요)
- Rails 7.0 → Rails 7.1 (Ruby 2.7+ 필요)
- Rails 7.1 → Rails 7.2 또는 8.0 (Ruby 3.1+ 필요)
각 단계마다 충분한 테스트를 진행하고, breaking changes를 확인하세요.
Rails 7.0을 사용 중인 경우 2025년 4월 1일 이전에 업그레이드를 완료해야 합니다. 목표 일정:
- 2025년 1-2월: 7.1로 업그레이드 완료 및 안정화
- 2025년 3월: 7.2 또는 8.0으로 업그레이드 완료
Rails 7.1을 사용 중인 경우 2025년 10월 1일 이전에 업그레이드가 필요합니다. 비교적 여유가 있으므로:
- 2025년 6-8월: 7.2로 업그레이드
- 또는 Rails 8.0이 충분히 안정화되면 직접 8.0으로 업그레이드 고려
Rails 7.2 또는 8.0을 사용 중인 경우 당분간 안전합니다. 정기적인 패치 업데이트만 적용하면 됩니다.
7. EOL 버전을 계속 사용해야 한다면?
때로는 레거시 시스템의 특성상 당장 업그레이드가 어려운 상황도 있습니다. 이런 경우 다음 옵션들을 고려할 수 있습니다:
상용 지원 서비스 활용 HeroDevs 같은 회사는 ‘Never-Ending Support(NES)’ 서비스를 제공합니다. EOL 이후에도 보안 패치와 기술 지원을 유료로 제공받을 수 있습니다.
Git 브랜치 직접 관리 Rails 팀은 EOL 이후에도 x-y-stable 브랜치에 백포트를 병합할 수 있습니다. Git에서 직접 브랜치를 가리키도록 설정하여 최신 수정사항을 받을 수 있습니다:
gem 'rails', github: 'rails/rails', branch: '7-0-stable'
하지만 이 방법은 공식 gem 릴리스가 없으므로, 프로덕션 환경에서는 신중하게 사용해야 합니다.
보안 강화 조치
- Web Application Firewall(WAF) 도입
- 정기적인 보안 스캔 및 침투 테스트
- 네트워크 레벨 보안 강화
- 모니터링 시스템 구축
그러나 이러한 방법들은 어디까지나 임시방편입니다. 장기적으로는 반드시 지원되는 버전으로 업그레이드해야 합니다.
8. 유용한 도구와 리소스
Rails 버전 관리와 업그레이드에 도움이 되는 도구들을 소개합니다:
버전 추적 도구
- endoflife.date/rails: 모든 Rails 버전의 EOL 일정 한눈에 보기
- RubyGems Rails Versions: 모든 Rails 릴리스 히스토리
보안 검사 도구
- Brakeman: Rails 애플리케이션 정적 보안 분석 도구
- bundler-audit: gem 의존성 보안 취약점 검사
업그레이드 도움 도구
- rails-upgrade-checklist: 버전별 업그레이드 체크리스트
- Ruby & Rails Compatibility Table: Ruby와 Rails 버전 호환성 표
공식 문서
- Ruby on Rails 공식 블로그: 최신 릴리스 소식
- Rails Guides: 공식 가이드 문서
- Rails API 문서: API 레퍼런스
Ruby 버전 호환성 참고표
Rails 업그레이드 시 Ruby 버전도 함께 고려해야 합니다:
Rails 버전 | 필수 Ruby 버전 | 권장 Ruby 버전 |
---|---|---|
8.0.x | Ruby 3.2+ | Ruby 3.3 |
7.2.x | Ruby 3.1+ | Ruby 3.3 |
7.1.x | Ruby 2.7+ | Ruby 3.2 |
7.0.x | Ruby 2.7+ | Ruby 3.1 |
6.1.x | Ruby 2.5+ | Ruby 3.0 |
6.0.x | Ruby 2.5+ | Ruby 2.7 |
5.2.x | Ruby 2.2.2+ | Ruby 2.6 |
5.1.x | Ruby 2.2.2+ | Ruby 2.5 |
5.0.x | Ruby 2.2.2+ | Ruby 2.4 |
4.2.x | Ruby 1.9.3+ | Ruby 2.3 |
4.1.x | Ruby 1.9.3+ | Ruby 2.2 |
4.0.x | Ruby 1.9.3+ | Ruby 2.1 |
3.2.x | Ruby 1.8.7+ | Ruby 2.0 |
참고: Ruby 자체도 지원 종료 일정이 있으므로, Ruby Maintenance Branches에서 Ruby EOL 날짜도 확인하세요.
9. 마치며 – 지금 바로 확인하세요
Rails 애플리케이션의 버전 관리는 단순히 ‘최신 기능 사용’의 문제가 아니라, 보안과 안정성에 직결되는 중요한 이슈입니다.
지금 사용 중인 Rails 버전을 확인하고, EOL 날짜를 캘린더에 표시해두세요. 그리고 충분한 여유를 두고 업그레이드 계획을 세우는 것이 중요합니다.
현재 버전 확인 방법
rails -v
# 또는
bundle exec rails -v
# 또는 Gemfile.lock 파일 확인
cat Gemfile.lock | grep -A 1 "rails ("
빠른 참조: 2025년 기준 핵심 일정
시점 | 해야 할 일 | 대상 버전 |
---|---|---|
즉시 | 긴급 업그레이드 필요 | Rails 6.1 이하 (이미 EOL) |
2025년 3월까지 | 업그레이드 완료 필요 | Rails 7.0 (4월 1일 EOL) |
2025년 9월까지 | 업그레이드 계획 수립 | Rails 7.1 (10월 1일 EOL) |
2026년 8월까지 | 안정적 운영 가능 | Rails 7.2 |
2026년 11월까지 | 안정적 운영 가능 | Rails 8.0 |
전체 버전 히스토리 한눈에 보기
Rails 8.0 ━━━━━━━━━━━━━━━━━━━━━> 2026-11-07 EOL [현재 최신]
Rails 7.2 ━━━━━━━━━━━━━━━━━━━━━> 2026-08-09 EOL [안정 버전]
Rails 7.1 ━━━━━━━━━> 2025-10-01 EOL [보안 지원만]
Rails 7.0 ━━━> 2025-04-01 EOL [⚠️ 곧 종료]
Rails 6.1 ✕ 2024-10-01 EOL [종료됨]
Rails 6.0 ✕ 2023-06-01 EOL
Rails 5.2 ✕ 2022-06-01 EOL
Rails 5.1 ✕ 2019-08-25 EOL
Rails 5.0 ✕ 2018-04-01 EOL
Rails 4.2 ✕ 2017-04-27 EOL
Rails 3.2 ✕ 2016-06-30 EOL
중요사항 정리
✅ 새로운 정책 (Rails 7.2+): 버그 수정 1년 + 보안 지원 2년
⚠️ Rails 7.0: 2025년 4월 1일 EOL (즉시 업그레이드 필요)
🔔 Rails 7.1: 2025년 10월 1일 EOL (업그레이드 계획 수립 필요)
🔴 Rails 6.1 이하: 이미 EOL (즉시 업그레이드 필수)
🎯 최신 안정 버전: Rails 8.0 (2026년 11월까지 완전 지원)
정기 모니터링 체크리스트
- [ ] 분기마다 endoflife.date/rails 확인
- [ ] Rails 공식 블로그 구독
- [ ] 보안 패치 발표 시 24-48시간 내 적용
- [ ] EOL 6개월 전부터 업그레이드 계획 수립
- [ ] Ruby 버전 호환성도 함께 확인
정기적으로 공식 Rails 블로그와 endoflife.date를 확인하여 최신 정보를 놓치지 마세요. 안전하고 안정적인 Rails 애플리케이션 운영을 위해, 적절한 시기에 업그레이드를 진행하시길 추천드립니다. 🙂