Sign inSign up

rahulmahale/wheel

By rahulmahale

•Updated about 8 years ago

Docker respository for wheel app https://github.com/bigbinary/wheel

Image
0

10K+

rahulmahale/wheel repository overview

Circle CI

Made by the team at BigBinary⁠, this is a base project to quickly spin up a Rails application built with opinions of BigBinary style of working.

⁠Local Development Setup

Install the latest Node.js⁠ version. Make sure that npm⁠ is installed with it as well.

bundle install
bundle exec rake setup
bin/yarn
bundle exec rails server

Visit http://localhost:3000⁠ and login with email [email protected]⁠ and password welcome.

⁠Running with Docker

⁠Pre-Requesites

Make sure you have docker⁠ and docker-compose⁠ installed.

⁠Starting rails
docker-compose up

After the container is successfully created you should be able to access your app on http://localhost:9000

⁠Deploy wheel on Kubernetes

Deploy wheel on kubernetes using this templates⁠.

Run following commands to deploy wheel on k8s.

Create postgres db and service.

kubectl create -f db-deployment.yml -f db-service.yml

$Create configmap for database.yml.

kubectl create -f database-configmap.yml

Create web/puma deployment and service.

kubectl create -f web-deployment.yml -f web-service.yml

Create background/delayed_job deployment and service.

kubectl create -f background-deployment.yml -f background-service.yml

Get application endpoint.

$ kubectl get svc web -o wide | awk '{print $4}'
a55714dd1a22d11e88d4b0a87a399dcf-2144329260.us-east-1.elb.amazonaws.com

⁠Replace Wheel with your project name

Let's say that the project name is Pump. Execute the command below to replace all occurrences of Wheel with Pump.

perl -e "s/Wheel/Pump/g;" -pi $(find . -type f)

⁠Features

  • Uses Bootstrap⁠ .
  • rake setup to set sensible sample data including user [email protected] with password welcome.
  • Uses devise⁠ .
  • Heroku ready. Push to heroku and it will work .
  • Uses Honeybadger⁠.
  • Built in superadmin feature.
  • Uses modal box to showcase an example of editing information using modal box.
  • Enables strict mode for all JavaScript code.
  • Uses puma as web server.
  • Uses haml for cleaner syntax over erb.
  • No coffeescript. We prefer JavaScript.
  • Uses turbolinks⁠.
  • Uses ActiveAdmin⁠.
  • When exception is sent to Rollbar then uuid is also sent for debugging⁠ .
  • Uses DelayedJob⁠.
  • Intercepts all outgoing emails in non production environment using gem mail_interceptor⁠.
  • Uses CircleCI⁠ for continuous testing.
  • Has a bunch of tests to make it easier to get started with new tests.
  • Uses PostgreSQL.
  • Built in support for carrierwave⁠ to easily upload items to s3.
  • Built in support for "variants" so the pages can be customized for tablet or phone easily.
  • Uses simple_form⁠.
  • Built in support for Mailgun⁠.
  • Easy to generate "test coverage".
  • Content compression via Rack::Deflater⁠.
  • Auto-formats Ruby code with rubocop⁠.
  • Auto-formats JavaScript and CSS code with prettier⁠.

⁠Heroku Review

Heroku Review⁠ is enabled on this application. It means when a PR is sent then heroku automatically deploys an application for that branch.

⁠About BigBinary

BigBinary

wheel is maintained by BigBinary⁠. BigBinary is a software consultancy company. We build web and mobile applications using Ruby on Rails, React.js, React Native and Elm.

Tag summary

Content type

Image

Digest

Size

426.6 MB

Last updated

about 8 years ago

docker pull rahulmahale/wheel