介绍

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. 背水一战 Windows 10 (79) - 自定义控件: Layout 系统, 控件模板, 事件处理

    [源码下载] 背水一战 Windows 10 (79) - 自定义控件: Layout 系统, 控件模板, 事件处理 作者:webabcd 介绍背水一战 Windows 10 之 控件(自定义控件) ...

  2. Sequential Container

    Notes from C++ Primer Initialize container by iterator When copy a container to another, the contain ...

  3. 【接口时序】2、Verilog实现流水灯及与C语言的对比

    一. 软件平台与硬件平台 软件平台: 1.操作系统:Windows-8.1 2.开发套件:ISE14.7 3.仿真工具:ModelSim-10.4-SE 硬件平台: 1.FPGA型号:XC6SLX45 ...

  4. 记web模拟手机环境已经微信开发者工具中可正常运行,实体机运行报错问题

    问题描述: 有个手机微信OA的项目 用户信息采用cookie方式保存.发布后使用chorme浏览器进行模拟访问测试发现一切运行顺畅,使用微信开发者工具进行测试也一切正常. 采用实体机进行测试时,用微信 ...

  5. js中的块级作用域

    概述 函数是js中最常见的作用域单元, 声明在一个函数内部的变量或函数会在所处的作用域中隐藏起来, 这是有意为之的非常好的设计原则. 但是随着js的发展, 我们有了某个代码块(通常指{..}内部)隐藏 ...

  6. 前端自动化部署方案-实践(配合shell)

    以下实例项目为vue项目,其他项目当然也雷同咯 在项目中建一个这个么脚本文件 不说了,上代码 #!/bin/sh handle=$1; env=$2; # 远程部署机 webhook # 如果用远程机 ...

  7. kubernetes集群搭建(3):master节点安装

    1.master节点上执行: yum -y install kubernetes flannel etcd 2.修改etcd配置为: [root@k8s-master ~]# vi /etc/etcd ...

  8. Linux - 执行命令与脚本

    001 - Linux执行多条命令 方法1:在命令行下可以一次性粘贴多条语句,shell会依次执行并输出结果 方法2:在一个命令行中,用分号将各个命令隔开或者使用&&连接各个命令 示例 ...

  9. python itchat+机器人web api实现个人微信机器人

    模块 itchat 功能 实现微信回复机器人(调用图灵机器人api) 代码 #!/usr/bin/env python3 # -*- coding: utf-8 -*- #Author:Eric im ...

  10. 2019年19道java经典面试题(附答案)

    1.不可变对象 指对象一旦被创建状态不能再改变.任何修改都会创建一个新的对象,如 String.Integer及其它包装类. 2.能否创建一个包含可变对象的不可变对象? 可以.不要共享可变对象的引用就 ...