从零开始学习docker(十一)介绍Docker Compose yml文件介绍
撸了今年阿里、头条和美团的面试,我有一个重要发现.......>>>
如果我们有一个App,他由多个container组成,那么这个App的维护会非常繁琐。
包括:
- 要从Dockerfile build image 或者 Docker hub拉取image
- 要创建多个container
- 要管理这些container(启动,停止,删除)
docker Compose的作用就是“批处理”。我们只需要一条命令,就可以管理多个容器的创建,停止删除。
Docker Compose是一个工具
这个工具可以通过一个yml文件定义多容器的docker应用
通过一条命令就可以根据yml文件的定义去创建或者管理这多个容器
如何写yml文件 ?
services
一个service代表一个container,这个container可以从docker hub的image来创建,或者从本地的Dockerfile build出来的image来创建。
service的启动类似docker run,我们可以给其指定network和volume, 所以可以给service指定etwork和volume的引用。
举例一:
services:db:image: postgres:9.4volumes:- "db-data:/var/lib/postgresql/data"networks:- back-tier
这句话类似于
docker run -d --name db --network back-tier -v db-data:/var/lib/postgresql/data postgres:9.4
举例二:
services:worker:build: ./workernetworks:back-tier
这个是通过本地build的。
networks
volumes
举例:
version: '3'services:wordpress:image: wordpressports:- 8080:80environment:WORDPRESS_DB_HOST: mysqlWORDPRESS_DB_PASSWORD: rootnetworks:- my-bridgemysql:image: mysqlenvironment:MYSQL_ROOT_PASSWORD: rootMYSQL_DATABASE: wordpressvolumes:- mysql-data:/var/lib/mysqlnetworks:- my-bridgevolumes:mysql-data:networks:my-bridge:driver: bridge
version: "3" 表示使用的docker Compose 版本是3
这个docker-compose.yml文件包含三部分:services,volumes,networks
services,定义了两个service分别是wordpress和mysql。wordpress 端口是80映射到8080,environment相当于-e选项,network表示链接的网络是my-bridge,这个网络在下面会有定义。mysql中的volume映射到mysql-data,这个volume在下面有定义。
从零开始学习docker(十一)介绍Docker Compose yml文件介绍相关推荐
- 从零开始学习jQuery (十一) 实战表单验证与自动完成提示插件
本系列文章导航 从零开始学习jQuery (一) 开天辟地入门篇 从零开始学习jQuery (二) 万能的选择器 从零开始学习jQuery (三) 管理jQuery包装集 从零开始学习jQuery ( ...
- [乐意黎转载]从零开始学习jQuery (十一) 实战表单验证与自动完成提示插件
从零开始学习jQuery (一) 开天辟地入门篇 从零开始学习jQuery (二) 万能的选择器 从零开始学习jQuery (三) 管理jQuery包装集 从零开始学习jQuery (四) 使用jQu ...
- Apache Nutch 1.3 学习笔记十一(页面评分机制 LinkRank 介绍)
下面是Google翻译的http://wiki.apache.org/nutch/NewScoring内容,是关于Nutch 新的链接分数算法的说明,有点类似于Google的PageRank,这里有其 ...
- 《STM32从零开始学习历程》——SPI物理层及FLASH芯片介绍
<STM32从零开始学习历程>@EnzoReventon SPI物理层及FLASH芯片介绍 相关链接: SPI协议层 SPI特性及架构 SPI固件库 参考资料: [野火EmbedFire] ...
- [docker]十一、docker nfs服务
目录 1.Swarm中使用Volume和NFS服务 1.1.为什么需要nfs服务器?nfs是什么?nfs解决了什么问题? 2.布置一台nfs服务器 2.1.客户机上能否有写的权限要看两种权限 2.2. ...
- JS学习笔记——高级编程中compose函数的介绍和基本实现
1.前言 在之前探讨redux的中间件的时候,applyMiddleware源码中有遇到过compose()函数,当时不太明白起作用,所以就上网好好查了一下,做了个总结. 2.普通函数 在函数式编程当 ...
- Docker(十一):Docker实战 安装 PHP 5.6、7
Docker 安装 PHP 安装 PHP 镜像 方法一.docker pull php 查找 Docker Hub 上的 php 镜像: 可以通过 Sort by 查看其他版本的 php,默认是最新版 ...
- 从零开始学习菜鸟晋级黑客之黑客之“名词介绍”
1.肉鸡,或者留了后门,可以被我们远程操控的机器,现在许多人把有WEBSHELL权限的机器也叫肉鸡. 2.木马:特洛伊木马,大家在电影<特洛伊>里应该看到了,战争是特络伊故意留下了个木马, ...
- 前端学习(3253):react脚手架文件介绍
最新文章
- 从工程中删除Cocoapods
- 特征工程(二) :文本数据的展开、过滤和分块
- 记一次synchronized锁字符串引发的坑兼再谈Java字符串
- mybatis-plus 查询,删除
- python画五角星填充不同颜色_不同颜色牡丹怎么画?3种牡丹图解教你画,适合0基础学习,收藏...
- Highcharts之折线图
- linux与pc机网络通信,PC宿主机和目标机通信方式
- 研究生科研必备!!!2015-2020年各类国际会议基于图像的三维重建论文综述(1)——总览
- sklearn2pmml模型转化实践
- 【交易技术前沿】券商买方投顾系统建设实践
- 微信小程序如何跳转视频号直播间
- python雷达算法实现_基于Python的气象雷达工具包研究
- nodejs q模块
- BZOJ1921: [Ctsc2010]珠宝商(点分治+SAM)
- 怎么看计算机版本号,如何查看电脑windows版本号(查看电脑版本信息的11种方法)...
- 让插入PPT的音乐跨幻灯片后同时播放
- c语言的文法,c语言实现First文法
- html控制checkbox选中状态,怎么设置checkbox 选中状态
- html视频怎么转换成图片,WPS演示如何将图片转换成视频?
- SEO源码自建快排系统