云计算技术关键技术性Docker实例教程:Compose应用

云计算技术关键技术性Docker实例教程:Compose应用 Compose 是用于界定和运作多器皿 Docker 运用程序流程的专用工具。根据 Compose,您可使用 YML 文档来配备运用程序流程必须的全部服务。随后,应用1个指令,便可以从 YML 文档配备中建立并起动全部服务。

 

Compose 是用于界定和运作多器皿 Docker 运用程序流程的专用工具。根据 Compose,您可使用 YML 文档来配备运用程序流程必须的全部服务。随后,应用1个指令,便可以从 YML 文档配备中建立并起动全部服务。

Compose 应用的3个流程:

1.应用 Dockerfile 界定运用程序流程的自然环境。

2.应用 docker-pose.yml 界定组成运用程序流程的服务,这样它们能够在防护自然环境中1起运作。

3.最终,实行 docker-pose up 指令来起动并运作全部运用程序流程。

运作下列指令下列载 Docker Compose 确当前平稳版本号:

$ sudo curl -L "github/docker/pose/releases/download/1.24.1/docker-pose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-pose

将可实行管理权限运用于2进制文档:

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

建立软链:

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

检测是不是安裝取得成功:

$ docker-pose version

cker-pose version 1.24.1, build 4667896b

应用示例:

建立1个检测文件目录:指令以下

$ mkdir posetest

$ cd posetest

在检测文件目录中建立1个名为 app.py 的文档,该文档redis 是运用程序流程互联网上的 redis 器皿的主机名,该主机应用的端口号为 6379。

在 posetest 文件目录中建立另外一个名为 requirements.txt 的文档,內容以下:

flask

redis

在 posetest 文件目录中,建立1个名为的文档 Dockerfile,內容以下:

FROM python:3.7-alpine

WORKDIR /code

ENV FLASK_APP app.py

ENV FLASK_RUN_HOST 0.0.0.0

RUN apk add no-cache g musl-dev linux-headers

COPY requirements.txt requirements.txt

RUN pip install -r requirements.txt

COPY . .

CMD ["flask", "run"]

Dockerfile 內容解释:

FROM python:3.7-alpine: 从 Python 3.7 映像刚开始搭建镜像系统。

WORKDIR /code: 将工作中文件目录设定为 /code。

ENV FLASK_APP app.py

ENV FLASK_RUN_HOST 0.0.0.0

设定 flask 指令应用的自然环境自变量。

RUN apk add no-cache g musl-dev linux-headers: 安裝 g,便于诸如 MarkupSafe 和 SQLAlchemy 之类的 Python 包能够编译程序加快。

COPY requirements.txt requirements.txt

RUN pip install -r requirements.txt

拷贝 requirements.txt 并安裝 Python 依靠项。

COPY . .: 将 . 新项目中确当前文件目录拷贝到 . 镜像系统中的工作中文件目录。

CMD ["flask", "run"]: 器皿出示默认设置的实行指令为:flask run。

在检测文件目录中建立1个名为 docker-pose.yml 的文档,随后粘贴下列內容:

# yaml 配备

version: '3'

services:

web:

build: .

ports:

- "5000:5000"

redis:

image: "redis:alpine"

该 Compose 文档界定了两个服务:web 和 redis。

web:该 web 服务应用从 Dockerfile 当今文件目录中搭建的镜像系统。随后,它将器皿和主机关联到曝露的端口号 5000。此示例服务应用 Flask Web 服务器的默认设置端口号 5000 。

redis:该 redis 服务应用 Docker Hub 的公共性 Redis 映像。

在检测文件目录中,实行下列指令来起动运用程序流程:

# docker-pose up

假如你想在后台管理实行该服务能够再加 -d 主要参数:

# docker-pose up -d

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://znktk.cn/ganhuo/4019.html