本文概述
它是一个用于通过单个命令创建和启动Docker应用程序的工具。我们可以使用它来归档以配置我们的应用程序的服务。
它是用于开发, 测试和登台环境的出色工具。
它提供了以下命令来管理应用程序的整个生命周期。
- 启动, 停止和重建服务
- 查看正在运行的服务的状态
- 流运行服务的日志输出
- 在服务上运行一次性命令
要实现撰写, 它包括以下步骤。
- 将应用程序环境变量放在Dockerfile中以公开访问。
- 在docker-compose.yml文件中提供服务名称, 以便它们可以在隔离的环境中一起运行。
- 运行docker-compose up, Compose将启动并运行你的整个应用程序。
典型的docker-compose.yml文件具有以下格式和参数。
// docker-compose.yml
version: '3'
services:
web:
build: .
ports:
- "5000:5000"
volumes:
- .:/code
- logvolume01:/var/log
links:
- redis
redis:
image: redis
volumes:
logvolume01: {}
安装Docker Compose
以下是在Linux Ubuntu中安装Docker Compose的说明。
curl -L https://github.com/docker/compose/releases/download/1.12.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
Docker-compose版本
$ docker-compose --version
它说, 允许被拒绝。因此, 使文件可执行。
$ sudo chmod +x /usr/local/bin/docker-compose
现在, 再次检查版本。
$ docker-compose ?version
使用Docker Compose运行应用程序
例
请遵循以下示例
1)创建目录
$ mkdir docker-compose-example
$ cd docker-composer-example
2)创建一个文件app.py。
// app.py
from flask import Flask
from redis import Redis
app = Flask(__name__)
redis = Redis(host='redis', port=6379)
@app.route('/')
def hello():
count = redis.incr('hits')
return 'Hello World! I have been seen {} times.\n'.format(count)
if __name__ == "__main__":
app.run(host="0.0.0.0", debug=True)
3)创建一个文件requirements.txt。
// requirements.txt
flask
redis
4)创建一个Dockerfile。
// Dockerfile
FROM python:3.4-alpine
ADD . /code
WORKDIR /code
RUN pip install -r requirements.txt
CMD ["python", "app.py"]
5)创建一个撰写文件。
// docker-compose.yml
version: '2'
services:
web:
build: .
ports:
- "5000:5000"
volumes:
- .:/code
redis:
image: "redis:alpine"
6)使用Compose构建和运行Docker App
$ docker-compose up
运行上面的命令后, 它显示以下输出。
现在, 我们可以通过运行http url来查看输出。
输出:
每次, 当我们刷新页面时。它显示计数器增加1。
评论前必须登录!
注册