当前位置: 首页 > 云计算, 虚拟化 > 正文

如何在 Docker上部署一个 Rails 应用

[摘要] Docker 官方镜像库已经提供了各种web应用而创建的Docker image,直接拿下来使用即可。如果自己创建Docker image的话,可以使用Docker的building tools来创建你的Docker容器,也可以通过Onbuild的命令行方式来创建Dockerfiles,而且这种使用更加纯粹的Dockerfiles方式会带给你更多的益处:

1. 你能够更多使用代码的方式控制和定义Docker镜像,即便你对操作系统本身不感冒,你仍然可以通过编辑Dockerfiles的方式来定制你的操作系统。
2. Docker内部标签提供了不同的语言或者框架版本,这样你将更容易的选则各种版本。
3. 如果你使用标准的Docker,你将会从Docker社区支持和贡献中获取更多的好处。

书归正传,现在我们就实战一下,看看如何在Docker中创建一个Rails应用:
#创建一个新的Rails app

如果不知道这个是用来做什么的? 可以先看看rails:onbuild Dockerfile:

现在看上去就非常清晰明了:Ruby的版本,源文件所在的位置和应用是如何运行的。

如果你是用Mac系统,你需要Gemfile.lock文件来关联Linux库的版本,这有一个很简单的命令:

这样启动一个包含一个关联你本地文件的文件系统的临时容器,所以Gemfile.lock文件被创建后将会被写到你本地的文件系统里面,而并不仅仅是写到了容器的文件系统中!

为什么使用Onbuild方式要比building tools更好? 我想其中一点就是定制化更容易些。例如你想让你的Rails应用使用thin server而不是webrick,你仅需要在你app的Dockerfile里面增加thin gem替换即可,如:

总之,Docker的这种灵活性是最讨人喜欢的。
原文:how to deploy a rails app to docker

本文固定链接: https://www.sudops.com/deploy-rails-app-on-docker.html | 运维·速度

该日志由 Fisher 于2014年12月05日发表在 云计算, 虚拟化 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: 如何在 Docker上部署一个 Rails 应用 | 运维·速度
关键字:

如何在 Docker上部署一个 Rails 应用:等您坐沙发呢!

发表评论


Time limit is exhausted. Please reload the CAPTCHA.

快捷键:Ctrl+Enter