介绍

Compose 是一个定义和管理多容器的工具,使用Python语言编写,使用Compose配置文件描述多个容器应用的架构,

比如什么镜像,数据卷,网络,映射端口等;然后一条命令管理所有服务,比如启动,停止,重启等。

YAML文件格式及编写注意事项

YAML是一种标记语言很直观的数据序列化格式,可读性高,类似于XML数据描述语言,语法比XML简单的很多。

YAML数据结构通过缩进来表示,连续的项目通过减号来表示,键值对用冒号分隔,数组用中括号括起来,hash

用花括号括起来。

YAML文件格式注意事项:

1.不支持制表符tab键缩进,需要使用空格缩进

2.通常开头缩进2个空格

3.字符后缩进1个空格,如冒号,逗号,横杆

4.用井号注释

5.如果包含特殊字符用单引号引起来

6.布尔值(true,false,yes,no,on,off) 必须用引号括起来,这样分析器会将他们解释为字符串

下载 docker-compose

mkdir /home/tools -p

# docker compose 1.18.0 的 SHA-256 sum 值:
# b2f2c3834107f526b1d9cc8d8e0bdd132c6f1495b036a32cbc61b5288d2e2a01 cd /home/tools
curl -L https://github.com/docker/compose/releases/download/1.18.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose sha256sum /usr/local/bin/docker-compose # 与上面的 SHA-256 sum 值进行比较确认命令是否完整 # 赋予执行权限
chmod +x /usr/local/bin/docker-compose # 查看版本号:
docker-compose --version

常用命名

# 运行,默认使用当前目录下的 docker-compose.yml
docker-compose up # 如果不使用默认的 yml ,可以使用 -f 指定, -d 在后台运行
docker-compose -f test.yml up -d # 查看容器运行状态,只支持当前目录下的 docker-compose.yml 文件
docker-compose ps # 重启所有容器,只支持当前目录下的 docker-compose.yml 文件
docker-compose restart # 重启App1
docker-compose restart App1 # 停止所有容器,只支持当前目录下的 docker-compose.yml 文件
docker-compose stop # 停止App1
docker-compose stop App1

举个例子:

cat docker-compose.yml 

version: '3.4'
services:
flash-sale: # 注意这里不能使用 _ 线命名,在java中需转义
image: ${IMAGE_NAME} # image 从 当前文件夹中的 .env 文件中获取
env_file:
- .env
environment:
- JAVA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5006 #启动调试端口
ports:
- 5006:5006 #暴露调试端口
extra_hosts:
- "www.klvchen.com:192.168.0.66" # 添加 hosts 记录
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080/actuator/health"]
interval: 1m30s
timeout: 10s
retries: 3
start_period: 30s
networks:
- backend networks:
backend:
external:
name: backend ----- cat .env IMAGE_NAME=flash-sale:2018-07-31_21-33

Docker-compose 编排工具安装的更多相关文章

  1. Docker Compose编排工具部署lnmp实践及理论(详细)

    目录 一.理论概述 编排 部署 Compose原理 二.使用docker compose 部署lnmp 三.测试 四.总结 一.理论概述 Docker Compose是一个定义及运行多个Docker容 ...

  2. docker--docker compose 编排工具

    11 docker compose 编排工具 11.1 docker compose 介绍 根据前面所学的知识可知,想要使用Docker部署应用,就要先在应用中编写Dockerfile 文件来构建镜像 ...

  3. 使用Docker compose编排Laravel应用

    前言 Laravel官方开发环境推荐的是Homestead(其实就是一个封装好的Vagrant box),我感觉这个比较重,于是自己用Docker compose编排了一套开发环境,在这里分享下. 环 ...

  4. 使用docker compose编排容器

    一.安装docker compose 二进制包安装 1.安装 Docker Compose 从 官方 GitHub Release 处直接下载编译好的二进制文件即可 # curl -L https:/ ...

  5. Docker - 容器编排工具 compose 之安装

    准备 首先,在使用和安装 docker compose之前,我们应该确保我们已经安装了 docker engine. 安装 官网上面有好多种安装方式,由于我们现在是在使用Docker, 个人感觉应该以 ...

  6. Docker(二十六)-Docker Compose编排容器

    1. 前言 Docker Compose 是 Docker 容器进行编排的工具,定义和运行多容器的应用,可以一条命令启动多个容器. 使用Compose 基本上分为三步: Dockerfile 定义应用 ...

  7. Docker系列之(五):使用Docker Compose编排容器

    1. 前言 Docker Compose 是 Docker 容器进行编排的工具,定义和运行多容器的应用,可以一条命令启动多个容器. 使用Compose 基本上分为三步: Dockerfile 定义应用 ...

  8. docker compose 编排

    Compose是Docker的服务编排工具,主要用来构建基于Docker的复杂应用,Compose 通过一个配置文件来管理多个Docker容器,非常适合组合使用多个容器进行开发的场景. 说明:Comp ...

  9. 使用Docker Compose编排微服务

    一般微服务架构会包含若干个微服务,而每个微服务可以有多个实例,如果每个微服务都有手动启停,那么效率就很低.维护量比较大. 所以我们可以使用Docker Compose来轻松.高效地管理容器. 一.安装 ...

随机推荐

  1. XXE(XML External Entity attack)XML外部实体注入攻击

    导语 XXE:XML External Entity 即外部实体,从安全角度理解成XML External Entity attack 外部实体注入攻击.由于程序在解析输入的XML数据时,解析了攻击者 ...

  2. Markdown新手教程

    目录 什么是Markdown? 用Markdown写作有什么优缺点? 有哪些比较好的Markdown写作工具? markdown语法 标题 水平分区线 引用 中划线 斜体 粗体 斜粗体 链接 图片 无 ...

  3. JavaScript实现HTML页面集成QQ空间分享功能

    <!DOCTYPE HTML> <html> <head> <title>QQ空间分享</title> <meta http-equi ...

  4. 关于Android的Service知识点,你知道吗?

    目录 学习Service相关知识点: 概述: Service生命周期: Service的基本用法: 服务. 问:达叔,今日工作累吗? 答:累啊,那么问你,你知道Android中的 Service(服务 ...

  5. javaScript 物体多形态改变加回调函数

    小方块同时改变 width height top left opacity(透明度)  加回调函数 改变第二个方块. 效果如下: <!DOCTYPE html> <html lang ...

  6. JAVA中的COPYONWRITE容器

    Copy-On-Write简称COW,是一种用于程序设计中的优化策略.其基本思路是,从一开始大家都在共享同一个内容,当某个人想要修改这个内容的时候,才会真正把内容Copy出去形成一个新的内容然后再改, ...

  7. 常用博客Metaweblog Api地址

    常用博客Metaweblog Api地址 CSDN: http://write.blog.csdn.net/xmlrpc/index 博客园(cnblogs):http://www.cnblogs.c ...

  8. 转载:https原理:证书传递、验证和数据加密、解密过程解析

    写的太好了,就是我一直想找的内容,看了这个对https立马明白多了 http://www.cnblogs.com/zhuqil/archive/2012/07/23/2604572.html 我们都知 ...

  9. Java RMI HelloWorld

    Java RMI HelloWorld   RMI 远程方法调用. 顾名思义就是可以像调用本地程序方法一样调用远程(其他JVM)的程序方法.   分为3个部分: Stub:中介,代理. 封装了远程对象 ...

  10. OkHttp3 简述