zoukankan      html  css  js  c++  java
  • Docker Compose 多容器应用

    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_USER 和 MYSQL_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)

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

    通过浏览器访问

    最后,停止应用

    备忘单

  • 相关阅读:
    java基础
    C++菜鸟启动之旅--vc6.0使用教程详解
    第8章 Linux磁盘与文件系统管理
    IO(四)----对象的序列化
    IO(三)----序列流
    IO(二)----字符流
    IO(一)----字节流
    File类
    枚举类
    自动装箱和自动拆箱
  • 原文地址:https://www.cnblogs.com/cjsblog/p/10879875.html
Copyright © 2011-2022 走看看