本篇文章1706字,读完约4分钟

撰写是一个工具,用于定义和运行多容器码头应用程序。合成允许您使用yml文件来配置您的应用程序需要的所有服务。然后,通过一个命令,所有服务都可以从yml文件配置中创建和启动。

撰写使用三个步骤:

1.使用dockerfile定义应用程序环境。

2.使用docker-composit . yml来定义组成应用程序的服务,以便它们可以在一个隔离的环境中一起运行。

3.最后,执行docker-compose up命令启动并运行整个应用程序。

运行以下命令下载当前稳定版本的docker compose:

$ sudo curl-l " github/docker/compose/releases/download/1 . 24 . 1/docker-compose-$(uname-s)-(uname-m)"-o/usr/local/bin/docker-compose

将可执行权限应用于二进制文件:

$ sudo chmod+x/usr/local/bin/docker-compose

创建软链:

$ sudo ln-s/usr/local/bin/docker-compose/usr/bin/docker-compose

测试安装是否成功:

$ docker-撰写-版本

cker-compose版本1.24.1,内部版本4667896b

使用示例:

创建一个测试目录:命令如下

$ mkdir composetest

$ cd composetest

在测试目录中创建一个名为app.py的文件。文件redis是应用程序网络上redis容器的主机名,主机使用端口6379。

在composetest目录中创建另一个名为requirements.txt的文件,内容如下:

redis

在composetest目录中,创建一个名为dockerfile的文件,其内容如下:

来自python:3.7-阿尔卑斯山

工作目录/代码

env flask _ app app.py

env flask_run_host 0.0.0.0

运行apk add -无缓存gcc musl-dev linux-headers

复制需求. txt需求. txt

运行pip安装-r requirements.txt

收到。。

cmd [“烧瓶”,“运行”]

文件内容说明:

从python:3.7-alpine:从python 3.7图像构建一个图像。

工作目录/代码:将工作目录设置为/code。

env flask _ app app.py

env flask_run_host 0.0.0.0

设置烧瓶命令使用的环境变量。

运行apk add-no-cache gcc musl-dev Linux-headers:安装gcc,以便可以编译和加速诸如markupsafe和sqlalchemy之类的python包。

复制需求. txt需求. txt

运行pip安装-r requirements.txt

复制requirements.txt并安装python依赖项。

复制..:在中复制当前目录。中的工作目录。镜子。

Cmd ["flash "、" run"]:容器提供的默认执行命令是:烧瓶运行。

在测试目录中创建一个名为docker-composite . yml的文件,并粘贴以下内容:

# yaml配置

版本:“3”

服务:

web:

构建:。

端口:

- "5000:5000 "

redis:

图片:“redis:alpine”

合成文件定义了两种服务:web和redis。

Web:该web服务使用从dockerfile的当前目录构建的图像。然后,它将容器和主机绑定到暴露的端口5000。此示例服务使用烧瓶网络服务器的默认端口5000。

Redis:这个redis服务使用码头工人中心的公共redis形象。

在测试目录中,执行以下命令启动应用程序:

# docker-编写

如果要在后台执行服务,可以添加-d参数:

# docker-编写up -d

相关阅读:

云计算核心技术教程:文件指令详细说明

来源:搜狐微门户

标题:云计算核心技术Docker教程: Compose使用

地址:http://www.shwmhw.com/shxw/11776.html