万安县由衅财经咨询网

云计算中央技术Docker教程: Compose行使

admin 2020-07-17 09:40 未知

Compose 是用于定义和运走众容器 Docker 行使程序的工具。经由过程 Compose,您能够行使 YML 文件来配置行使程序必要的一切服务。然后,行使一个命令,就能够从 YML 文件配置中创建并启动一切服务。

Compose 行使的三个步骤:

1.行使 Dockerfile 定义行使程序的环境。

2.行使 docker-compose.yml 定义组成行使程序的服务,云云它们能够在阻隔环境中一首运走。

3.末了,实走 docker-compose up 命令来启动并运走整个行使程序。

运走以下命令以下载 Docker Compose 的现在安详版本:

$ sudo curl -L "https://github.com/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-compose --version

cker-compose version 1.24.1, build 4667896b

行使示例:

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

$ mkdir composetest

$ cd composetest

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

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

flask

redis

在 composetest 现在录中,新股动态创建一个名为的文件 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 gcc 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 gcc musl-dev linux-headers: 安置 gcc,以便诸如 MarkupSafe 和 SQLAlchemy 之类的 Python 包能够编译添速。

COPY requirements.txt requirements.txt

RUN pip install -r requirements.txt

复制 requirements.txt 并安置 Python 倚赖项。

COPY . .: 将 . 项现在中的现在现在录复制到 . 镜像中的做事现在录。

CMD ["flask", "run"]: 容器挑供默认的实走命令为:flask run。

在测试现在录中创建一个名为 docker-compose.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-compose up

倘若你想在后台实走该服务能够添上 -d 参数:

# docker-compose up -d

有关浏览:

云计算中央技术Docker教程: Dockerfile指令详解



Powered by 万安县由衅财经咨询网 @2018 RSS地图 html地图

Copyright 站群系统 © 2013-2018 360 版权所有