Skip to content

Working Rails 6.1 demo application with PostgreSQL, Docker, jsbundling-rails (with Webpack), and GitHub Actions

Notifications You must be signed in to change notification settings

ryanwi/rails-on-docker

Repository files navigation

Rails 6 on Docker demo application

Ruby

This app demonstrates Rails 6 with PostgreSQL and Webpack (with jsbundling-rails), all running in Docker.

NOTE: There is also an example Rails 7 application working in Docker without Webpack or node.js

Requirements

Please ensure you are using Docker Compose V2. This project relies on the docker compose command, not the previous docker-compose standalone program.

https://docs.docker.com/compose/#compose-v2-and-the-new-docker-compose-command

Check your docker compose version with:

% docker compose version
Docker Compose version v2.10.2

Initial setup

cp .env.example .env
docker compose build
docker compose run --rm web bin/rails db:setup

Running the Rails app

docker compose up

Running the Rails console

When the app is already running with docker-compose up, attach to the container:

docker compose exec web bin/rails c

When no container running yet, start up a new one:

docker compose run --rm web bin/rails c

Running tests

docker compose run --rm web bundle exec rspec

Updating gems

docker compose run --rm web bundle update
docker compose up --build

Updating Yarn packages

docker compose run --rm web yarn upgrade
docker compose up --build

Webpacker retirement

Many Rails 6 apps will be or were created with the Webpacker gem. On January 19, 2022, Webpacker announed its retirement. As a result, it has been replaced in this repo with jsbundling-rails based on the recommendation in the announcement.

Credits/References

About

Working Rails 6.1 demo application with PostgreSQL, Docker, jsbundling-rails (with Webpack), and GitHub Actions

Topics

Resources

Stars

Watchers

Forks