怎么使用Fig编配Docker
怎么使用Fig编配Docker,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
编配(orchestration)是一个没有严格定义的概念。大概描述了自动配置、协作和管理服务的过程。在Docker世界里,编配用来描述一组实践过程,这个过程会管理运行在多个Docker容器里的应用,而这些Docker容器有可能运行在多个宿主机上。
这里记录使用Fig进行简单的容器编配。Fig是由Orchard团队开发的Python开源工具,2014年被Docker公司收购。
使用Fig,可以用一个YAML文件定义一组要启动的容器,以及容器运行的属性。Fig称这些容器为服务。
1、Linux上安装Fig
sudo bash -c "curl -L https://github.com/docker/fig/release/download/0.5.2/linux > /usr/local/bin/figchmod +x /usr/local/bin/fig
查看fig是否安装成功:
fig --version
2、示例应用
演示Fig的例子使用了两个容器:
应用容器,运行Python示例程序;
Redis容器,运行Redis数据库。
构建应用容器:
mkdir figappcd figapptouch Dockerfile
下载作者编辑好的app.py文件和requirements.txt文件(该文件保存应用程序的依赖关系)到figapp目录。
FROM python:2.7MAINTAINER James TurnbullENV REFRESHED_AT 2014-08-01ADD . /figappWORKDIR /figappRUN pip install -r requirements.txt
这个Dockerfile基于python:2.7镜像构建。首先添加app.py和requirements.txt到镜像中的/figapp目录。之后将工作目录设置为/figapp,并执行pip命令来安装应用的依赖:flask和redis。
构建镜像
docker build -t "ivan/figapp" .
3、编写fig.yml文件
使用Fig,可以(以Docker容器的形式)定义一组服务,并启动这些服务。Fig还可以指定这些服务运行时的属性,它们和docker run命令需要的参数类似。将所有与服务有关的属性都定义在一个YAML文件里,之后执行fig up命令,Fig就会启动这些容器使用指定的参数来执行,并将所有的日志输出合并到一起。
cd figapptouch fig.yml
web: image: jamtur01/figapp command: python app.py ports: - "5000:5000" volumes: - .:/figapp links: - redisredis: image: redis
fig.yml文件定义了两个服务:web和redis。image指定了要运行的镜像,也可以使用build命令并提供一个Dockerfile让Fig构建一个镜像:
web: build: /home/james/figapp
使用command指定服务启动时要执行的命令。使用ports和volumes指定了服务要映射到的端口和卷。使用links指定服务要连接的其他服务。
4、运行Fig
在fig.yml文件所在的目录执行fig up命令运行服务。也可以加入-d参数使其在后台运行。
5、使用Fig
fig ps 命令列出本地fig.yml文件里定义的正在运行的所有服务。
fig logs命令查看服务的日志时间。
fig stop命令可以停止正在运行的服务。
fig rm删除服务。
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。