Rails in Docker
Dockerizing and developing
Andrew Klotz
@klotzandrew
What is docker?
- Package code, with environment, and dependencies
- Docker images
- Containers run images
What you need to install
● docker
● docker-compose
● docker-machine
● https://docs.docker.com/docker-for-mac
docker-machine
● eval $(docker-machine env default)
● docker-machine ls
Dockerized rails
Ruby container
● Ruby
● Build ourselves
Database container
● PostgreSQL
● Use official image
Docker image for rails
● Rails new or existing app
● Add a Dockerfile (touch Dockerfile)
● Connect to containerized db in config/database.yml
Database
● official postgres image
● docker run --name db postgres
● docker ps
Docker orchestration
- vim docker-compose.yml
- docker-compose up
Check it out!
● visit (docker-machine ip):3000
● docker ps
● see live code changes in the container
● run commands with a container
○ docker exec -it dockerrails_web_1 rails test
○ docker exec -it dockerrails_web_1 bash
Recap
● vim Dockerfile
● vim database.yml
● vim docker-compose.yml
● docker-compose up

Rails in docker