zoukankan      html  css  js  c++  java
  • Docker学习04

    Docker Compose 概述

    1.1 概述

    • Compose 项目是 Docker 官方的开源项目,负责实现对 Docker 容器集群的快速编排,定义和运行多容器Docker应用程序的工具。通过Compose,您可以使用YAML文件来配置应用程序的服务。然后,使用一个命令,就可以从配置中创建并启动所有服务
    • 我们知道使用一个 Dockerfile 模板文件,可以让用户很方便的定 义一个单独的应用容器。然而,在日常工作中,经常会碰到需要多个容器相互配合来完成某 项任务的情况。例如要实现一个 Web 项目,除了 Web 服务容器本身,往往还需要再加上后 端的数据库服务容器,甚至还包括负载均衡容器等。Compose 恰好满足了这样的需求。它允许用户通过一个单独的 docker-compose.yml 模板文件 (YAML 格式)来定义一组相关联的应用容器为一个项目(project)。有了Compose,我们就不需要再一个个组件去写一份Dockerfile,只需要将整体环境同一起来,写在一份docker-compose.yml文件即可

    1.2 使用步骤

    使用compose三个步骤

    • 使用定义您的应用环境,Dockerfile以便可以在任何地方复制。
    • 定义组成应用程序的服务,docker-compose.yml 以便它们可以在隔离的环境中一起运行。
    • 运行 docker-compose up Compose启动并运行您的整个应用程序。

    docker-compose.yml 示例

    version: '3.1'
    services:
      mysql:                                                      #服务名称
        restart: always                                           #代表只要docker启动,那么这个容器就跟着一起启动
        image: daocloud.io/library/mysql:5.7.4                    #指定镜像路径
        container_name: mysql                                     #指定容器名称
        ports:
          - 3306:3306                                             #指定端口的映射
        environment:
          MYSQL_ROOT_PASSWORD: 123456                             #指定MySQL账号root的密码
          TZ: Asia/shanghai                                       #指定时区
        volumes:
          - /opt/docker_mysql_tomcat/mysql:/var/lib/mysql                #指定映射数据卷
      httpd:
        restart: always
        image: php:7.2-apache
        container_name: apache
        ports:
          - 80:80
        environment:
          TZ: Asia/shanghai
        volumes:
          - /opt/docker_mysql_tomcat/www:/var/www/html
          - /opt/docker_mysql_tomcat/logs:/var/log/apache2
    

    Compose具有用于管理应用程序整个生命周期的命令:

    • 启动,停止和重建服务
    • 查看正在运行的服务的状态
    • 运行服务的日志输出
    • 在服务上运行一次性命令

    1.3 Docker-Compose使用命令

    创建并启动容器 (更新了compose.yml 文件需要运行它)

    docker-compose up
    

    创建并后台启动容器

    docker-compose up -d
    

    查看当前compose进程

    docker-compose ps
    

    启动容器

    docker-compose start
    

    关闭容器

    docker-compose stop 
    

    关闭并移除容器

    docker-compose down
    

    查看日志

    docker-compose logs
    

    关闭并移除容器并删除容器清除存储

    docker-compose down --volumes
    

    安装 Docker Compose

    两种安装方式

    • 下载docker-compose二进制文件安装
    • pip安装(将Compose当作一个python应用从pip源安装)

    下载二进制文件

    sudo curl -L "https://github.com/docker/compose/releases/download/1.25.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    
    # 使用光放github下载很慢,建议换源
    curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.4/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
    
    # 上传至/usr/local,并修改名字,赋予可执行权限
    mv docker-compose-Linux-x86_64 docker-compose
    chmod 777 docker-compose
    

    pip安装

    udo pip install docker-compose
    

    卸载

    二进制包方式安装的,删除二进制文件即可
    
    sudo rm /usr/local/bin/docker-compose
    pip 安装的,则执行如下命令即可删除
    
    sudo pip uninstall docker-compose
    
    不论你在什么时候开始,重要的是开始之后就不要停止。 不论你在什么时候结束,重要的是结束之后就不要悔恨。
  • 相关阅读:
    第十三篇:一点一滴学ibatis(二)映射文件
    第十二篇:随手记一下javaBean的setter,getter方法的命名问题
    第十一篇:一点一滴学ibatis(一)
    第十篇:javaScript中的JSON总结
    第九篇:Spring的applicationContext.xml配置总结
    第八篇:ZTree操作总结
    第六篇:fastJson常用方法总结
    第五篇:zTree节点的一些操作,权当备份
    第四篇:java读取Excel简单模板
    测试驱动android
  • 原文地址:https://www.cnblogs.com/yunhgu/p/14759404.html
Copyright © 2011-2022 走看看