Docker Compose 多容器应用

Docker Compose 多容器应用,更多关于docker的视频教程

Docker Compose是一个用来定义并运行复杂应用程序的工具。用Compose,你可以在一个文件中定义多个容器应用程序,然后只需一条命令就可以完成使其运行所需的所有操作。

一个使用Docker容器的应用程序通常是由多个容器组成的。使用Docker Compose,不需要编写shell脚本来启动容器。所有的容器都以服务的形式被定义在一个配置文件中,然后使用docker-compose脚本来启动、停止和重启应用和应用中的所有服务,以及服务中的所有容器。

完整的命令列表:

在这里插入图片描述

下面是一个Java EE应用连接MySQL的例子

配置文件

首先,创建一个目录javaee

然后,在该目录下创建一个文件docker-compose.yml

在这里插入图片描述

在这个Compose文件中:

1.定义了两个服务,分别是“db”和“web”

2.image 指定了服务所使用的镜像

3.environment 定义了用于初始化MySQL的环境变量。其中,MYSQL_DATABASE 指定在镜像启动以后创建的数据库的名字;MYSQL_USERMYSQL_PASSWORD 用于创建用户并设置密码。该用户将被授予超级管理员的权限类连接到通过MYSQL_DATABASE变量指定的数据库;.MYSQL_ROOT_PASSWORD 强制的,用于设置MySQL root账号的密码。

4.Java EE应用程序使用在connection-url中指定的db服务

5.arungupta/docker-javaee:dockerconeu17镜像启动 WildFly Swarm 应用服务器

6.ports 指定端口转发

7.depends_on 指定服务直接的依赖关系。在这个例子中,MySQL会先于WildFly启动

启动应用程序

通过执行下面的命令,应用程序中的所有服务都会以独立模式启动

在这里插入图片描述

或者,你也可以用-f选项来指定配置文件。(PS:默认的配置文件的名字是docker-compose.yml)

接下来,运行命令启动一下

在这里插入图片描述 在这里插入图片描述

通过浏览器访问

在这里插入图片描述

最后,停止应用

在这里插入图片描述

备忘单

在这里插入图片描述

在这里插入图片描述

DocKer一次构建可放在任何地方就可以运行,不需要进行任何改变DocKer 就类似于一个容器。这个容器就好像常用的虚拟机一样,当我们虚拟机里面安装过VS、SQL、浏览器 ...... 之后咱们就把虚拟机镜像备份下来、等到下一次需要重新搭一个环境的时候,就可以省去很多事情了,直接把备份的虚拟机运行起来,该有的就都有了,省去了很多事情。

在用DocKer的情况下,咱们可以直接把项目发布在DocKer容器上面进行测试,当项目需要正式上线的时候我们直接可以把做好的DocKer 镜像部署上去就行了,如果测试的好,就不必担心项目上正式版本的时候再出现什么问题了,(比如说 咱们的Confing 配置信息很多项目都是什么测试环境地址,正式环境地址的,但是用过DocKer之后就一个就行了)DocKer可以在 云、Windows、Linux 等环境上进行部署,就单说这一点就省去了我的很多费用、还有项目部署上线的风险,不必每次项目上线都留守一堆人才等着项目报错.

[掌握docker才能跟上云时代的步伐】更多教程请戳

※更多文章和资料|点击后方文字直达 ↓↓↓ 100GPython自学资料包 阿里云K8s实战手册 [阿里云CDN排坑指南]CDN ECS运维指南 DevOps实践手册 Hadoop大数据实战手册 Knative云原生应用开发指南 OSS 运维实战手册 云原生架构白皮书

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值