新手问题 有在平时 rails 开发中使用 Docker 的小伙伴吗?

wcc526 · 2014年07月13日 · 最后由 embbnux 回复于 2016年03月18日 · 4208 次阅读

有在平时 rails 开发中使用 Docker 的小伙伴吗?

今天去了 docker meetup,发现 docker 看起来很美好,实际上有很多坑。

我尝试了下 Docker,发现有点问题。

要怎么在 mac 下访问 Docker 里的 rails 应用,Docker inspect 看到的 ip,只能在 boot2docker 里访问。宿主看不到。这样的话,能 localhost:3000 的页面都看不到。


问题解决了,在运行时要指定端口转发就行了 docker run -i -t -p 3000:3000 rails

正在研究中,各种坑啊,发现这种解决方案都是解决了一个问题,同时带来了 n 个问题,如果不是专业干运维,貌似不用钻这么深

问题太多的了,感觉非常的不成熟,总感觉一阵风,到处都在吹...

#2 楼 @debugger @ddyy 坑是有点多。但是感觉如果用在平时持续集成的话是不错的,启动速度很快。

#3 楼 @wcc526 我一直搞不明白,centos 跟 ubuntu 不同的系统不同的版本差别那么大,一个镜像文件是怎么做到跨这么多平台的

#4 楼 @ddyy 主要是 Container 技术牛,实现的话是用 namespace 和 cgroup,我今天听了邱模炯老师讲了之后,才明白的。http://www.meetup.com/Docker-Beijing/events/190668082/

不知道今天的 slides 和视频会不会放出来。

@wcc526 我现在一直在用 fig, 你可以看看我写的文章: (http://coder.858go.com/post/90258818197/rails-fig-docker)

#6 楼 @xds2000 太好了,谢谢!

#5 楼 @wcc526 那一个镜像也小不了啊,是 nginx、mysql、php、rails 这些软件放在一个镜像还是一个软件一个镜像?

@ddyy centos 和 ubuntu 是不用的发行版,和 Image 能不能跨平台没关系的。我们通常意义的跨平台是指 Linux, BSD, Window 都能运行的程序才叫跨平台。Docker 做不到这一点。

Docker 目前并没有最佳实践,所以要多用多看,看看它到底能帮你做什么。找出不爽的地方吐槽到 upstream 的 issues 里,让 Docker 变的更好。

#9 楼 @xds2000 我的意思就是跨这些发行版,没必要纠结语文层面的东西。就跨发行版也得把各个发行版不同的依赖都带上吧,这样镜像包含的东西也不少。

#10 楼 @ddyy 其实没有跨平台。。需要 linux container 支持。http://baike.baidu.com/view/11854949.htm?fr=aladdin

详细的见百科。

#10 楼 @ddyy 我的理解是跟 Docker 用的技术和虚拟化技术差不多,只不过是从用户态这一层面入手。

最近刚配置的,我是使用 docker-compose 实现,很简单: 使用 docker 快速构建 rails 开发环境

需要 登录 后方可回复, 如果你还没有账号请 注册新账号