我可以使用docker来隔离我的开发环境吗?
好吧,这让我发疯了.我已经阅读了很多关于Docker的内容,但仍然无法理解 – 对我来说是码头工程师…… 我使用Mac OS X进行工作,并使用Ubuntu开发虚拟机来开发虚拟机.我为每个项目使用vagrant,因为我希望在生产服务器上使用相同的操作系统和库.我讨厌像rbenv和nvm这样的工具,因为它们的使用增加了终端的启动时间.如果两者都被激活,我需要等待2..4秒才能准备好新的终端选项卡.我打字很快,这种延迟会影响我的生产力. 我很喜欢流浪汉,但是使用虚拟机,每个虚拟机需要大约800 MB的RAM ……太多了. 所以问题是:我可以像流浪汉一样使用docker吗?假设我有两个项目,我需要将Ruby 2.0用于项目A,将Ruby 2.3用于项目B,是否可能/正确使用docker创建两个容器,每个容器都有自己的Ruby版本?而且我不希望这些版本的Ruby与系统Ruby交叉. 有了vagrant,我只用Ruby 2.0创建两个VM,第二个用Ruby 2.3创建.如果我不需要其中任何一个,我将销毁VM,我的系统将保持清晰,不会在客户机上安装软件. 编辑:我知道我不能在操作系统X本身使用Docker.让我们假设一些Linux Ubuntu / Debian / Arch /等.如果我知道Linux Docker会给我我想要的东西,我准备转移到Linux. 最佳答案
您可以使用适用于Mac OS X的新docker beta在Mac OS X中使用Docker.它仍然使用VM,但它比Virtualbox轻.此外,它支持与OS X更好的集成.截至目前,它有点错误.
要回答您的问题,是的,您可以使用docker容器内所需的运行时创建环境,而不会影响其他容器或系统.请记住,容器通常在其中运行一个进程,因此不要像在流浪盒中那样运行多个服务.它不是一个完整的操作系统,它只是一个在不同的内核命名空间中运行的可执行文件.如果你想运行多个进程,有一些解决方法,但“正确”的方法是使用docker-compose之类的东西连接在一起的多个容器. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |