Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Rails
  3. docker-rails

docker-rails

MITRuby

A production-ready Rails 7 demo application with Docker, featuring ActionCable, OpenSearch, Sidekiq, and a multi-container architecture.

GitHubGitHub
1.1k stars170 forks0 contributors

What is docker-rails?

Docker-Rails is a demonstration Rails 7 application designed to illustrate production deployment using Docker. It serves as a simple content management system (CMS) for managing posts and includes features like real-time updates, full-text search, and background job processing. The project focuses on building optimized, lean Docker images for efficient deployment.

Target Audience

Rails developers and DevOps engineers looking to understand or implement Docker-based production deployments for Rails applications with modern features like ActionCable and Sidekiq.

Value Proposition

It provides a comprehensive, real-world example of containerizing a Rails app with a multi-service architecture, emphasizing image size optimization and production readiness, which is valuable for learning and reference.

Overview

Dockerize Rails 7 with ActionCable, Webpacker, Stimulus, Elasticsearch, Sidekiq

Use Cases

Best For

  • Learning Docker deployment strategies for Rails 7 applications
  • Implementing real-time features with ActionCable in a containerized environment
  • Adding full-text search capabilities using OpenSearch to a Rails app
  • Setting up background job processing with Sidekiq in Docker
  • Building a lean production Docker image using Alpine and multi-stage builds
  • Creating a multi-container architecture with services like PostgreSQL, Redis, and OpenSearch

Not Ideal For

  • Teams wanting a plug-and-play CMS with extensive third-party integrations and community support
  • Projects prioritizing rapid prototyping over optimized, production-grade Docker image sizes
  • Applications deployed on serverless or non-containerized platforms where Docker is not applicable

Pros & Cons

Pros

Lean Image Optimization

Produces a Docker image of only ~80MB using Alpine Ruby and multi-stage builds, as detailed in the Dockerfile and the author's linked blog post on optimizations.

Comprehensive Feature Integration

Demonstrates real-world Rails features like ActionCable for real-time updates, OpenSearch with Searchkick for full-text search, and Sidekiq for background processing in a single cohesive application.

Production-Ready Architecture

Showcases a multi-container setup with services like PostgreSQL, Redis, and OpenSearch, including docker-compose.production.yml and deployment guides for tools like traefik.

Modern Technology Stack

Uses Rails 7 alongside contemporary tools such as Stimulus for JavaScript, Sidekiq-Cron for scheduling, and Blazer for admin dashboards, keeping it relevant for current development practices.

Cons

Not a Scaffold or Boilerplate

It's a complete demonstration application rather than a generator, so adapting it for new projects requires cloning and extensive manual code modifications instead of quick setup.

Resource-Intensive Local Development

Running the full stack with multiple Docker containers (e.g., PostgreSQL, Redis, OpenSearch) can be heavy on system resources and slow for iterative development compared to lighter setups.

Opinionated Gem Choices

Relies on specific gems like Clearance for authentication and Shrine for uploads, which the README admits are not necessarily 'best practice' and may not suit teams preferring alternatives like Devise or Active Storage.

Frequently Asked Questions

Quick Stats

Stars1,104
Forks170
Contributors0
Open Issues1
Last commit1 year ago
CreatedSince 2016

Tags

#real-time-updates#alpine-linux#deployment#sidekiq#rails#production-deployment#actioncable#content-management-system#file-upload#stimulusjs#docker#multi-container#opensearch#ruby#reference-implementation

Built With

P
Puma
y
yarn
P
PostgreSQL
R
Ruby on Rails
D
Docker
O
OpenSearch
R
Redis
S
Sidekiq
A
Alpine Linux

Included in

Rails3.9k
Auto-fetched 6 hours ago

Related Projects

suspenderssuspenders

A Rails application template with our standard defaults, optimized for deployment on Heroku.

Stars4,048
Forks519
Last commit3 days ago
jumpstart(excid3)jumpstart(excid3)

Easily jumpstart a new Rails application with a bunch of great features by default

Stars1,202
Forks313
Last commit1 year ago
rails-template(mattbrictson)rails-template(mattbrictson)

My former app template for Rails 7. All recommendations you see here have been moved to https://github.com/mattbrictson/nextgen

Stars1,072
Forks221
Last commit2 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub