15.Docker-Compose的概念理解及安装

1.Docker-Compose是什么?

Docker-Compose是实现对Docker容器集群的快速编排的工具软件。它是Docker官方开源的一个工具软件,可以管理多个Docker容器组成一个应用。你需要定义一个YAML格式的配置文件docker-compose.yml.写好多个容器间的调用关系,然后,只需要一个命令,就能同时启动/关闭这些容器。

2.为什么会有Docker-Compose?它做什么?

随着微服务的发展,我们的系统是由多个微服务构成的,比如一个商城系统,我们用会员服务、商品服务、订单服务、支付服务等,除此之外,我们如果把MySQL和redis也用容器来启动,那么我们至少要启动6个容器,并且各个容器还有启动顺序。那么这样的话,如果我们要运行多个服务,难道我们要每个服务单独写Dockerfile,然后构建镜像,运行容器,很累很繁琐。

所以,随着docker容器越来越多,怎么统一管理容器,比如一键启动、停止、启动顺序的编排、容器之间网络管理成为了一个很大的问题。所以推出了docker-compose多服务部署工具。

3. Docker-Compose是怎么做的?

Docker-Compose允许用户通过一个单独的docker-compose.yml模板文件来定义一组相互关联的应用容器为一个项目。可以很容易的用一个配置文件定义一个多容器应用,然后使用一条指令安装这个应用的所有依赖,完成构建。Docker-Compose解决了容器与容器之间如何管理编排的问题。

3.1 Docker-Compose的核心概念

Docker-Compose的核心概念主要有两个:

  1. docker-compose.yml 配置文件
  2. 两个要素是服务(service)和工程(project),service是指一个个应用容器,比如订单微服务、会员微服务、mysql容器;project简单说就是一个完整的app应用,由一组关联的应用容器组成一个完整业务单元,在docker-compose.yml定义。

3.2 Docker-Compose的使用步骤

  1. 编写Dockerfile定义各个微服务应用并构建出对应的镜像文件;
  2. 使用docker-compose.yml文件,定义一个完整业务单元,编排好应用中的各个容器服务;
  3. 执行docker-compose up命令,来启动并运行整个应用程序,完成一键部署上线。

4. Docker-Compose怎么安装?

4.1 下载

下载最新的稳定版,这里采用这个下载,由于服务器上网络不好下载,我本地下载完成后上传的服务器

下载地址:

bash 复制代码
https://github.com/docker/compose/releases/download/v2.23.3/docker-compose-linux-x86_64

4.2 上传到服务器

通过ftp上传到服务器下面这个目录下

bash 复制代码
/usr/local/bin

然后重命名为docker-compose:

bash 复制代码
mv docker-compose-linux-x86_64 docker-compose

4.3 设置权限

bash 复制代码
chmod +x /usr/local/bin/docker-compose

4.4 验证


5. 我对Docker-Compose一些看法

Docker-Compose提供了一定能力的容器编排,并且基本是基于单机的,无法在大批量宿主机上进行服务的集群化部署。所以,在一些测试或者开发,甚至说比较小的一些单机项目上可以使用,也仅限于此。所以它的局限性很大,在大规模集群部署时,还是推荐使用k8s。但是在使用k8s之前,我们必须把容器给搞明白。

相关推荐
计算衎1 天前
基于pgAdmin4 Web UI界面实现连接docker 版PostgreSQL实现增删改查操作
docker·postgresql·docker-compose
howard20057 天前
利用Docker-Compose部署WordPress
docker-compose·wordpress
howard20057 天前
利用Docker-Compose部署多容器LNMP环境
docker-compose·lnmp·多容器部署
一只大耗子。1 个月前
Mac M系列芯片制作Oracle19镜像使用docker-compose运行
docker·docker-compose·mac·oracle19c
牛奶咖啡131 个月前
Linux系统中安装部署开源的建站、博客工具——Halo
docker-compose·开源博客·halo·开源建站工具·创建自己的博客网站·docker容器引擎的安装
邂逅星河浪漫2 个月前
【RabbitMQ】docker-compose编排部署RabbitMQ容器——CentOS
分布式·docker·centos·rabbitmq·docker-compose
邂逅星河浪漫2 个月前
【DockerFile+Nginx+DockerCompose】前后端分离式项目部署(docker容器化方式)
nginx·docker·centos·部署·docker-compose·dockerfile·容器化部署
邂逅星河浪漫2 个月前
【Docker + DockerCompose】安装步骤+演示
docker·容器·docker-compose
友莘居士3 个月前
Docker Compose从入门到实战:配置与命令全指南
docker·docker-compose
zml_20153 个月前
docker 1分钟 快速搭建 redis 哨兵集群
linux·redis·docker·docker-compose