Daily menu scraper and visualizer built on top of ruby on rails hosted in a container behind a reverse proxy container provided by nginx.
Instructions how to host this multicontainer application on a server with a specific domain name including SSL certificates.
- domain name
- SSL certificate
- docker-compose
- configure enviroment
- run
cp .env.example .env
- add your domain name to
.env
file
- run
- add your SSL certificate files to
proxy/certs/
- add your CRT file as
lunch.crt
(proxy/certs/lunch.crt
) - add your KEY file as
lunch.key
(proxy/certs/lunch.key
)
- add your CRT file as
- build the application via
docker-compose build
- start the application via
docker-compose up -d
Instructions how to launch locally rails application only.
It is recommended to use rbenv/rbenv with rbenv/ruby-build.
For instructions using docker-compose:
software | version |
---|---|
docker | 19.03.13 |
docker-compose | 1.26.1 |
For instructions using ruby:
software | version |
---|---|
ruby | 2.7.1 |
gem | 3.1.2 |
bundle | 2.1.4 |
rails | 6.0.3.3 |
Using docker-compose:
- run
docker-compose up -d lunch
- find the container's IP address via
docker inspect lunch | sed -nr 's/^\s*"IPAddress": "([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)",$/\1/p'
- visit
http://IP:3000
Using ruby:
- change directory to lunch via
cd lunch
- install dependencies via
bundle install
- start the application via
bundle exec rails server
- to specify custom IP address use
-b <IP>
- to specify custom port number use
-p <NUM>
- to specify custom IP address use
- visit
http://localhost:3000