docker compose 使用教程

Docker提供一个容器编排工具------》Docker Compose,它允许用户在一个模板(YAML格式)中定义一组相关联的应用容器,这组容器会根据配置模板中的"--link"等参数

对启动的优先级自动排序,简单执行一条"docker-compose up",就可以把同一个服务中的多个容器一次创建和启动。

安装docker-compose:

代码如下:

curl -L https://github.com/docker/compose/release/download/1.6.0/docker-compose-`uname -s`-`uname -r` > /usr/local/bin/docker-composechmod +x /usr/local/bin/docker-compose

使用Docker Compose管理多个容器,首先需要把容器写到它的配置文件中,默认配置文件名为docker-compose.yml,我们可以通过“-f”选项指定配置文件。

下面通过安装redmine来说明

将docker run创建容器的指令改造为Docker Compose的配置文件

postgresql容器创建和启动的命令为:

[root@localhost ~]# docker run --name postgresql-redmine -d \
> --env 'DB_NAME=redmine_production' \
> --env 'DB_USER=redmine' \
> --env 'DB_PASS=password' \
> sameersbn/postgresql:9.4-12 

它使用sameersbn/postgresql:9.4-12镜像创建了一个名字为postgresql-redmine的容器,并配置了三个环境变量。转换为Docker Compose配置文件内容如下:

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

redmine容器创建和启动的命令为:

代码如下:

docker run --name redmine -d --link postgresql-redmine:postgresql --publish 10083:80 --env 'REDMINE_PORT=10083' sameersbn/redmine:3.2.0-4

它使用 sameersbn/redmine:3.2.0-4镜像创建了一个名字为redmine的容器,转换为Docker Compose配置文件内容如下:

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

创建配置文件~/redmine/docker-compose.yml,合并内容如下:

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

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

执行新容器组的创建和启动:

docker-compose up -d 

最后,通过http://ip10083就可以访问网站。

后续启动和停止就变得非常简单了:

停止命令:

docker-compose stop

启动命令:

docker-compose start

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 利用docker-compose搭建AspNetCore开发环境

    使用docker-compose搭建AspNetCore开发环境 1 使用docker-compose搭建开发环境 我们的目标很简单:使用docker-compose把若干个docker容器组合起来就成了. 首先使用Nginx代理所有的Web程序,这样只需要在主机上监听一个端口就可以了,不污染主机.再组合各Web程序.Redis/Memcached.SqlServerOnLinux. 新建一个目录sites,所有和集群相关的都放在这里,目录结构如下所示 sites     nginx      

  • Ubuntu15.10安装docker和docker-compose教程

    1.查看Linux内核版本(3.8以上)和操作系统位数64位 uname -a 结果: Linux jiaxiaoniu-jnq 4.2.0-16-generic #19-Ubuntu SMP Thu Oct 8 15:35:06 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux 查看Ubuntu版本号命令:cat /etc/issue 2.安装Docker sudo apt-get install docker.io 3.安装后查看Docker版本 sudo do

  • docker-compose 详解及示例代码

    docker-compose使用示例 利用docker搭建一个mysql + java service + nginx,总共4个docker容器,如果采用docker run的方式一个一个容器去创建十分麻烦.为了能更高效的批量创建容器,docker推出了docker-compose工具,只需要定义一个docker-compose.yml文件即可快速搞定一组容器的创建, mysql: image: daocloud.io/yjmyzz/mysql-osx:latest volumes: - ./m

  • Docker 容器编排利器Compose(起步篇)

    一个大型的Docker组成的微服务应用中,容器的数量是非常庞大的,如果依赖传统的人工配置方式进行维护,对于开发和运维来说简直就是噩梦.Compose的出现正是为了解决这个问题. Compose简介 Compose的前身是Fig,Fig被Docker收购之后正式更名为Compose,Compose向下兼容Fig.Compose是一个用于定义和运行多容器Docker应用的工具,只需要一个Compose的配置文件和一个简单的命令就可以创建并运行应用所需的所有容器.在配置文件中,所有容器通过servic

  • 使用Docker compose编排Laravel应用的方法

    前言 Laravel官方开发环境推荐的是Homestead(其实就是一个封装好的Vagrant box),我感觉这个比较重,于是自己用Docker compose编排了一套开发环境,在这里分享下. 环境要求 先要安装好Docker 和 Docker compose,而且Docker 仓库镜像最好换成国内的.一般地,我开发电脑上会运行一个Vagrant,然后再在里面运行Docker等应用. 主要思路 Docker官方推荐的是一个容器运行一个服务,所以会有Compose编排,各个服务间通过容器互联技

  • Docker-compose的安装和设定详细步骤

    Docker-compose的安装和设定详细步骤 docker的1.12版本中,swarm已经合体,docker-engine/swarm/docker-compose的三件套装已经变成两件.后续会不会将docker-compose进一步合体呢,想做的话应该是顺手的事情吧,不想做的话再简单也不会做.考虑到docker-compose可能以独立的方式消失在docker的舞台之后,先写一个安装的文档作纪念吧. 最简单的方式 下载下来二进制的docker-compose,放到你想放的地方,设定可执行的

  • Docker系列之使用Docker Compose编排容器

    1. 前言 Docker Compose 是 Docker 容器进行编排的工具,定义和运行多容器的应用,可以一条命令启动多个容器. 使用Compose 基本上分为三步: 1.Dockerfile 定义应用的运行环境 2.docker-compose.yml 定义组成应用的各服务 3.docker-compose up 启动整个应用 2. 安装Compose 直接从github下载即可,前提要先安装Docker,版本要1.9.1以上 Note that Compose 1.8.0 requires

  • 详解Docker之Compose服务编排

    Compose是Docker的服务编排工具,主要用来构建基于Docker的复杂应用,Compose 通过一个配置文件来管理多个Docker容器,非常适合组合使用多个容器进行开发的场景. 说明:Compose是Fig的升级版,Fig已经不再维护.Compose向下兼容Fig,所有fig.yml只需要更名为docker-compose.yml即可被Compose使用. 服务编排工具使得Docker应用管理更为方便快捷. Compose网站:https://docs.docker.com/compos

  • Docker-Compose的使用示例详解

    Docker Compose是一个用来定义和运行复杂应用的Docker工具.使用Compose,你可以在一个文件中定义一个多容器应用,然后使用一条命令来启动你的应用,完成一切准备工作. - github.com/docker/compose docker-compose是用来在Docker中定义和运行复杂应用的工具,比如在一个yum文件里定义多个容器,只用一行命令就可以让一切就绪并运行. 使用docker compose我们可以在Run的层面解决很多实际问题,如:通过创建compose(基于YU

  • docker compose 使用教程

    Docker提供一个容器编排工具------>Docker Compose,它允许用户在一个模板(YAML格式)中定义一组相关联的应用容器,这组容器会根据配置模板中的"--link"等参数 对启动的优先级自动排序,简单执行一条"docker-compose up",就可以把同一个服务中的多个容器一次创建和启动. 安装docker-compose: 复制代码 代码如下: curl -L https://github.com/docker/compose/rele

  • 使用Docker Compose搭建 Confluence的教程

    本文使用「署名 4.0 国际 (CC BY 4.0)」许可协议,欢迎转载.或重新修改使用,但需要注明来源. 署名 4.0 国际 (CC BY 4.0) 本文作者: 苏洋 创建时间: 2019年03月30日 统计字数: 5170字 阅读时间: 11分钟阅读 本文链接: https://soulteary.com/2019/03/30/construct-confluence-with-docker.html 使用 Docker 搭建 Confluence 小型团队协同,或者想花钱买个省心,Conf

  • 使用docker compose安装harbor私有仓库的详细教程

    概述 harbor是什么呢?英文单词的意思是:港湾.港湾用来存放集装箱(货物的),而docker的由来正是借鉴了集装箱的原理,所以harbor是用于存放docker的镜像,作为镜像仓库使用.官方的说法是:Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器. harbor镜像仓库是由VMware开源的一款企业级镜像仓库,它包括权限管理(RBAC).LDAP.日志审核.管理界面.自我注册.镜像复制等诸多功能. 一.harbor特性 1.基于角色的访问控制:用户和存储库是通

  • docker compose快速开始超详细教程

    目录 docker compose快速开始 一.什么是docker compose 1. Compose 特性 在单独的主机上提供多个相互隔离的环境 在创建容器时,自动保存 volume 数据 只重建有改动的容器 可以使用变量 2. 使用 Compose 步骤和思路 二.docker-compose常用命令 三.docker compose 安装 四.docker-compose.yml 基础 五.工作常用技巧 docker-compose或docker run 启动容器后就退出 docker-

  • 详解Docker Compose 中可用的环境变量问题

    Compose 的多个部分在某种情况下处理环境变量.本教程可以帮助你找到所需的信息. 1. 替换Compose文件中的环境变量 可以使用 shell 中的环境变量填充 Compose 文件中的值: web: image: "webapp:${TAG}" 更多信息请参考 Compose 文件手册中的 Variable substitution章节. 2. 设置容器中的环境变量 可以通过 environment 关键字设置服务容器中的环境变量,就跟使用 docker run -e VARI

  • Docker Compose 实践及梳理

    Docker Compose 可以实现 Docker 容器集群的编排,可以通过 docker-compose.yml 文件,定义我们的服务及其需要的依赖,轻松地运行在测试.生产等环境 文档 Product manuals Compose file version 3 reference Docker 从入门到实践 [中文] 安装 Compose Compose 依赖 Docker Engine,所有要保证环境安装了 Docker,可参考官方教程,主要分为两步: # 1. 下载 Compose 只

  • Docker Compose 搭建简单的Python网络应用程序(步骤详解)

    目录 前提条件 第1步:设置 第2步:创建一个Dockerfile 第3步:在Compose文件中定义服务 Web服务 Redis服务 第4步:用Compose构建和运行你的应用 第5步:编辑Compose文件以添加绑定挂载 第6步:用Compose重新构建并运行应用程序 第7步:更新应用程序 第8步:试验一些其他命令 在这个页面上,你可以建立一个简单的Python网络应用程序,运行在Docker Compose上.该应用使用Flask框架,并在Redis中维护一个点击计数器.虽然样本使用了Py

  • docker Compose部署springboot+vue前端端分离

    目录 (一) 准备工作 一.安装 二.修改生产环境下的配置以及打包操作: (二) 开始部署 一.blog_api 制作镜像 二.dockerCompose编排 三.mysql.redis.nginx的配置: 四.导入数据[数据库表的数据.前端静态web资源] 五.测试并排除错误: 温馨提示:如果有自己的服务器最好不过了,这样部署网项目就可以上线了.没有的话,只能使用localhost 本机访问啦,记得替换 ngixn 中的ip地址.域名为localhost. (一) 准备工作 一.安装 1.安装

  • 详解docker compose搭建lnmpr环境实现

    目录 使用docker-compose搭建lnmpr环境 介绍 软件架构 Compose 简介 具体文件内容docker-compose.yml 使用说明 使用docker-compose搭建lnmpr环境 本文环境 docker20.10,PHP8.1(含扩展)+ Nginx1.22 + MySQL8.0 + Mongo6.0 + Redis6.0 + Swoole2.0 介绍 docker-compose搭建PHP8.1(含扩展)+ Nginx1.22 + MySQL8.0 + Mongo6

随机推荐