zoukankan      html  css  js  c++  java
  • docker 入门学习 -5

    五. Docker-Compose

    之前运行一个镜像,需要添加大量的参数。

    可以通过Docker-Compose编写这些参数。

    Docker-Compose可以帮助我们批量的管理容器。

    只需要通过一个docker-compose.yml文件去维护即可。

    5.1 下载Docker-Compose

     

    # 1. 去GitHub官网搜索docker-compose,下载最新版本的Docker-Compose
    # 2. 将下载好的文件,拖拽到Linux操作系统中
    # 3. 需要将Docker-Compose文件名称修改一下,给予DockerCompose文件一个可执行的权限
    mv docker-compose-Linux-x86_64 docker-compose
    chmod 777 docker-compose
    # 4. 方便后期操作,配置一个环境变量
    # 将docker-compose文件移动到/usr/local/bin,修改了/etc/profile文件,给/usr/local/bin配置到PATH中
    mv docker-compose /usr/local/bin
    vi /etc/profile
        export PATH=$JAVA_HOME:/usr/local/bin:$PATH
    source /etc/profile
     
    # 5. 测试一下
    # 在任意目录下输入docker-compose

    5.2使用Docker-Compose来管理mysql和tomcat容器 

    version:'3.1'
    services:
      mysql:                     # 服务的名称
        restart: always          # 代表只要Docker启动,那么这个容器就跟着一起启动
        image: daocloud.io/library/mysql:5.7.4     # 指定镜像路径
        container_name: mysql    # 指定容器名称
        ports:
          - 3306:3306        # 指定端口号的映射
        environment:
          MYSQL_ROOT_PASSWORD: root         # 指定MySQL的ROOT用户登录密码
          TZ: Asia/Shanghai                 # 指定时区
        volumes:
          - /opt/docker_mysql-tomcat/mysql_data:/var/lib/mysql        # 映射数据卷
      tomcat:
        restart: always          # 代表只要Docker启动,那么这个容器就跟着一起启动
        image: daocloud.io/library/tomcat:8.5.15-jre8     # 指定镜像路径
        container_name: tomcat    # 指定容器名称
        ports:
          - 8080:8080        # 指定端口号的映射
        environment:
          MYSQL_ROOT_PASSWORD: root         # 指定MySQL的ROOT用户登录密码
          TZ: Asia/Shanghai                 # 指定时区
        volumes:
          - /opt/docker_mysql-tomcat/tomcat_webapps:/usr/local/tomcat/webapps        # 映射数据卷
          - /opt/docker_mysql-tomcat/tomcat_logs:/usr/local/tomcat/logs        # 映射数据卷

    5.3使用Docker-Compose命令管理容器

    在使用docker-compose的命令时,默认会在当前目录下找docker-compose.yml文件

    # 1. 基于docker-compose.yml启动管理的容器
    docker-compose up -d
    # 2. 关闭并删除容器
    docker-compose down
    # 3. 开启|关闭|重启已经存在的由docker-compose维护的容器
    docker-compose start|stop|restart
    # 4. 查看由docker-compose管理的容器
    docker-compose ps
    # 5. 查看日志
    docker-compose logs -f

    5.4 docker-compose配置Dockerfile使用

    使用docker-compose.yml文件以及Dockerfile文件在生成自定义镜像的同时启动当前镜像,并且由docker-compose去管理容器

    docker-compose.yml

    # yml文件
    version: '3.1'
    services:
      ssm:
        restart: always
        build:                           # 构建自定义镜像
          context: ../                   # 指定Dockerfile文件所在路径
          dockerfile: Dockerfile         # 指定Dockerfile文件名称
        image: ssm:1.0.1
        container_name: ssm
        ports:
          8081:8080
        environment:
          TZ: Asia/Shanghai

    Dockerfile文件

    from daocloud.io/library/tomcat:8.5.15-jre8
    copy ssm.war /usr/local/tomcat/webapps
    # 可以直接启动基于docker-compose.yml以及Dockerfile文件构建的自定义镜像
    docker-compose up -d
    # 如果自定义镜像不存在,会帮助我们构建出自定义镜像,如果自定义镜像已经存在,会直接运行这个自定义镜像
    # 重新构建的话
    # 重新构建自定义镜像
    docker-compose build
    # 运行前,重新构建
    docker-compose up -d --build 
  • 相关阅读:
    交换机的配置文件和系统映像文件备份与恢复(如果不小心损坏了,可以用这种方法恢复)
    交换机端口安全配置
    路由器密码重置(不是适用于所有有些启动顺序数字不一样)
    交换机的默认网关(跨网段telnet)
    思科交换机的初始配置(使用telnet登录)
    Linux命令集(第一部分共40个)
    Linux6.9安装
    javamail邮件发送报错解决方案
    isEmpty()与equals()、==“”区别
    eclipse svn 修改了类名之后提交
  • 原文地址:https://www.cnblogs.com/cheflone/p/14263971.html
Copyright © 2011-2022 走看看