# Rails 6 template This repo is a designed to be a Dockerized Rails 6 template: - [Docker](https://docs.docker.com/mac/started/) - [Rails 6](https://rubyonrails.org/) - [StimulusJS](https://github.com/stimulusjs/stimulus) - [Bulma](https://bulma.io/documentation) - [ActiveAdmin](https://activeadmin.info/) - [Devise](https://github.com/heartcombo/devise) ## Setup - `bundle update` - `Download latest copy of FontAwesome and replace vendor/fontawesome-pro/** (npm auth access has expired)` - `yarn install --check-files` - `Find/replace all TODO` - `docker-compose up --build` - `docker-compose run app rails db:setup` ### Dependencies This service has dependencies on the following services. 1. Ruby 2.6.5 1. Rails 6.x 1. Postgres 1. Redis 1. Webpacker 1. Yarn 1. [Stimulus](https://stimulusjs.org/handbook/installing#using-webpack) ### Docker Follow the Docker [Getting Started](https://docs.docker.com/mac/started/) guide to get `docker`, `docker-machine` and `docker-compose`. This project contains helper scripts to build, test, & push images to dockerhub. ~~1. Build image: `$ script/build`~~ 1. Run the test suite: `$ script/test` ### Docker Compose Docker compose is used for Jenkins and local development. Use the information below to configure each environment. ##### Local development To start the application using docker compose locally: 1. Start the services: `$ docker-compose up --build` 1. Access via browser: `$ open http://localhost:3000` ### Environment Variables | Variable | Description | Default | | ---------------|:---------------|:-----------------------:| | `APP_NAME` | App name | app | `APP_TITLE` | App title | TODO | `DATABASE_URL` | Database URL | postgres://localhost:5432/app_development | `DB_CONNECT_TIMEOUT` | Db connect timeout | 10 | `DB_MAX_CONNECTIONS` | Db Max Connections | 16 | `DB_MIN_CONNECTIONS` | Db Minimum Connections | 5 | `DB_SOCKET_TIMEOUT` | Db socket timeout | 5 | `DB_WAIT_QUEUE_TIMEOUT` | Db Wait queue timeout | 5 | `LOG_LEVEL` | Log level | warn | `REDIS_URL` | Redis Url | redis://localhost:6379/0 | `SMTP_HOST` | Smpt address | `localhost` | `SMTP_PORT` | Smpt port | 1025 | `WEBPACKER_HOST` | Webpacker host | `localhost` | `WEBPACKER_DEV_SERVER_HOST` | Webpacker dev host | `0.0.0.0` ### TODO - [ ] Heroku Procfile