docker之compose篇

参考链接

docker系列视频

blog.csdn.net/sareur_1879...

compose背景、解决的问题

Compose是Docker公司推出的一个工具软件,可以管理多个Docker容器组成一个应用。你需要定义一个YAML格式的配置文件docker-compose.yml,写好多个容器之间的调用关系。然后,只要一个命令,就能同时启动/关闭这些容器

docker建议我们每一个容器中只运行一个服务,因为docker容器本身占用资源极少,所以最好是将每个服务单独的分割开来但是这样我们又面临了一个问题?

如果我需要同时部署好多个服务,难道要每个服务单独写Dockerfile然后在构建镜像,构建容器,这样累都累死了,所以docker官方给我们提供了docker-compose多服务部署的工具

例如要实现一个Web微服务项目,除了Web服务容器本身,往往还需要再加上后端的数据库mysq服务容器,redis服务器,注册中心eureka,甚至还包括负载均衡容器等等。。。。。。

Compose允许用户通过一个单独的docker-compose.yml模板文件(YAML格式)来定义一组相关联的应用容器为一个项目(project)。

可以很容易地用一个配置文件定义一个多容器的应用,然后使用一条指令安装这个应用的所有依赖,完成构建。Docker-Compose解决了容器与容器之间如何管理编排的问题

  1. Dockerfile是用来构建docker镜像的
  2. docker-compose是用来基于docker-compose.yml来构建docker容器的

compose下载安装

Docker-Compose是Docker官方的开源项目,负责实现对Docker容器集群的快速编排。

compose管网:docs.docker.com/compose/ compose管网下载:docs.docker.com/compose/ins...

compose核心概念

服务service和工程project

  • 服务service:一个个应用容器实例,比如订单微服务、库存微服务、mysql容器、nginx容器或者redis容器

  • 工程project:由一组关联的应用容器组成的一个完整业务单元,在docker-compose.yml文件中定义

compose使用三个步骤

  1. 编写Dockerfile定义各个微服务应用并构建出对应的镜像文件
  2. 使用docker-compose.yml定义一个完整业务单元,安排好整体应用中的各个容器服务。
  3. 最后,执行docker-compose up命令来启动并运行整个应用程序,完成一键部署上线
相关推荐
川石课堂软件测试2 小时前
涨薪技术|Kubernetes(k8s)之Ingress
功能测试·云原生·容器·kubernetes·单元测试
迷茫运维路2 小时前
深入解析K8s VolumeMounts中的subPath字段及其应用
云原生·容器·kubernetes
qq_487048772 小时前
K8S单机部署
云原生·容器·kubernetes
me8322 小时前
【Linux docker】关于Docker 守护程序配置远程访问,安全认证以及idea连接。
linux·安全·docker
黑夜无路人2 小时前
k8s数据存储
云原生·容器·kubernetes·数据存储
笑远2 小时前
AWS容器化部署指南
docker·容器·aws
洗荡千万春2 小时前
Docker与K8s,大兵与将军
后端·kubernetes·自动化运维
me8322 小时前
【Linux docker 容器】关于想要让虚拟机在开机时候也docker自己启动,容器也自己启动,省去要自己开docker和容器
java·linux·docker·云原生·eureka
nukix4 小时前
Docker Compose 部署 steamcmd 安装奈斯服务端
java·服务器·docker
法号:吃肉5 小时前
语音识别-FunASR-docker部署-【超简洁步骤】
人工智能·docker·语音识别