1. 安装 Docker Compose 环境
安装好 docker 环境之后,执行下面的动作。
最简单的办法:pip install docker-compose
如果使用了 compose 的新特性,例如网络,会要求安装 docker 1.10,这种情况,在 docker-compose run
之后,会显示如下错误提示:
ERROR: The engine version is lesser than the minimum required by compose. Your current project requires a Docker Engine of version 1.10.0 or superior.
因为截止发稿,apt-get 里面可以安装的 docker 版本只到 1.9.1,因此如何安装 1.10,需要在网上找。
这是一篇有用的文章:http://www.oschina.net/news/70489/docker-1-10-0-final
最终的解决脚本(Ubuntu)是:
curl -fsSL https://test.docker.com/ | sh
2. 撰写 docker-compose.yml
文件
其实 Docker Compose 就是要把我们所有的 docker run 容器写到一起,然后可以集中进行批量的开启、关闭以及重建等工作。
于是编写好之后,通过 docker-compose up -d
就可以用守护进程的方式启动里面的所有容器。
那么 docker-compose.yml
就应该包括有所有的 container 里面 run 语句的信息,包括 volume,link,port 等等。
我们先来创建一个文件夹:
mkdir -p /var/docker/compose
cd /var/docker/compose
vim /var/docker/compose/docker-compsoe.yml
这个 docker-compose.yml
文件是用 YAML 语法编写的,不了解 YAML 的观众可以自行科普一下,但说白了就是一个更容易阅读的 JSON 文件。
3. 实际组件的搭建
一个实际的 WEB 环境在我这里包含了几个主要组成部分:MariaDB, PHP-FPM, Django-Gunicorn, Nginx
所以下面这个例子包含了上面这几个组件的部署。
记得定期清理没用的 images,http://stackoverflow.com/q/33913020/2544762
【转载请附】愿以此功德,回向 >>
原文链接:http://www.huangwenchao.com.cn/2016/03/docker-compose-production.html【Docker compose 实际生产环境配置】