Dockerizing Rails Services

docker

为了升级安全,将Rails环境为了两个Docker Image:

  • 一个是Basic,里面安装着rbenv, Ruby, bundler, nodejs和要用到的lib。
  • 第二个安装着Rails App和它依赖的Gems,并配置Unicorn导出相应的端口,用来对接Nginx。

一、Ruby ENV 的 Docker

- Dockerfile

https://github.com/lanvige/docker-rails/blob/master/Dockerfile

- sources.list

https://github.com/lanvige/docker-rails/blob/master/sources.list

- Build Image

在当前目录下构建Image

1
2
3
$ docker build -t <TAG> .
$ sudo docker build -t lanvige/ruby:2.1.5 .

这样你就有一台装有rbenv, Ruby 2.1.5, Nodejs的Image了。

- Test Contrainer

1
$ sudo docker run -t -i lanvige/ruby:2.1.5 /bin/bash

查看安装情况:

1
2
$ ruby -v
$ node -v

Rails App & Unicorn 的 Docker

- Dockerfile

- Build Image

- Test Container

REF::