Docker 现在成了我最喜欢的工具,在本文中,我将概述一些在我使用Docker 过程中反复
出现的模式。我不期待它们能给你带来多少惊喜,但我希望这些能对你有用,我非常愿意与
你交流在使用 Docker 过程中碰到的模式。
我所有 Docker 实验的基础是保持 volume 状态不变,以便 Docker 容器在没有数据丢失的
下面所有的 Dockerfiles 例子都集中在:创建容器在其本身可以随时更换的地方,而无需考
1. The Shared Base Container(s)
Docker 鼓励“继承”,这应用也很自然——这是高效使用 Docker 的一个基本方式,不仅由于
它有助于减少建立新容器的时间,Docker 优点多多,它会 cache 中间步骤,但也容易在不
明确的情况下,失去分享机会。
对于多数想要随处部署的项目来说所,要创建多个容器,尤其是在这个项目需要长进程,或
者需要特定包的情况,所以我要运行的容器也变得越来越多。
重要的是为了让 mybase 环境完全自由支配,我正考虑试图在 Docker 上运行“所有一切(” 包
括我依赖几个桌面 app)。
所以我很快开始提取我的基本设置到 base 容器。这是我当前的“devbase”Dockerfile:
RUN apt-get -y install ruby ruby-dev build-essential git
RUN apt-get install -y libopenssl-ruby libxslt-dev libxml2-dev