• Docker Compose使用


    Docker提供一个容器编排工具,Docker Compose,允许用户在一个模板(YAML)中定义一组相关联的应用容器,这组容器会根据模板中的“--link”等参数,对启动的优先级自动排序,简单的执行一条“docker-compose up”,就可以把同一个服务中的多个容器依次创建和启动。

    windows的docker安装中自带了docker-compose,但是测试发现通过yml启动容器组延迟非常厉害,暂时没有定位到问题,这里改到ubantu系统中继续进行学习。

    ubantu系统安装docker请参考网上资料。

    安装docker-compose

    curl -L https://github.com/docker/compose/releases/download/1.8.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose 
    

    如果出现"Permission denied"错误, 则需要在开始时 运行 sudo –i,用root权限执行上述命令。

    chmod +x /usr/local/bin/docker-compose

    查看compose是否安装成功:

    docker-compose --version
    

      

    Docker Compose 常用命令:

    执行新容器组:docker-compose up  (后台运行 + “-d”)

    删除容器组:docker-compose down

    查询容器组所有容器状态:docker-compose ps

    停止容器组:docker-compose stop

    启动容器组:docker-compose start

    指定YAML配置文件:docker-compose -f xxx/docker-compose.yml up/down/ps/stop/start

    注:默认配置文件名为docker-compose.yml,可以通过“-f”选项指定

    容器组创建案例:

    以readme demo为例,docker命令为:

    docker run --name=postgresql-redmine -d --env='DB_NAME=redmine_production' --env 'DB_USER=redmine' --env 'DB_PASS=password' sameersbn/postgresql:9.4-12
     
    docker run --name=redmine -d --link=postgresql-redmine:postgresql --publish=10083:80 --env='REDMINE_PORT=10083' sameersbn/redmine:3.2.0-4
    

     改成docker compose容器组:

    postgresql:
        image: sameersbn/postgresql:9.4-12
        environment:
            - DB_NAME=redmine_production
            - DB_USER=redmine
            - DB_PASS=password


    redmine: image: sameersbn/redmine:3.2.0-4 links: - postgresql:postgresql ports: - "8087:80" environment: - REDMINE_PORT=8087

      通过docker-compose 启动容器组,删除原来创建的容器。

    删除容器命令:docker rm xxx    (-f 强制删除运行中容器)

  • 相关阅读:
    1-4-Java 语言环境搭建
    1-3-JDK,JRE,JVM介绍
    1-2-java语言的特点及运行机制
    1-1-常用DOS命令与快捷键
    0-2-计算机硬件介绍
    一、JSP的3大指令Page,include,taglib
    springboot目录结构
    问题:qt按钮有时候点击没有反应
    vs2017+qt问题
    mysql问题
  • 原文地址:https://www.cnblogs.com/YatHo/p/7675889.html
Copyright © 2020-2023  润新知