docker-compose

使用意义

  • 之前运行一个镜像,需要添加大量参数
  • 可通过Docker-Compose编写这些参数
  • Docker-Compose可以帮助我们批量管理容器
  • 只需要一个docker-compose.yml文件去维护即可

1.下载Docker-Compose

(1) 去github官网搜索docker-compose,下载所需版本
(2) 将下载好的文件,拖拽到linux系统中(secureCRT使用alt+p,把文件拖入窗口,即可把文件上传至/root目录下)
(3) 将文件名称修改一下,并赋予可执行权限

mv docker-compose-Linux-x86_64 docker-compose
chmod 777 docker-compose

(4) 方便后期操作,配置一个环境变量,将docker-compose文件移动到/usr/local/bin,修改/etc/profile文件

mv docker-compose /usr/local/bin
vim /etc/profile
       export PATH=$JAVA_HOME:/usr/local/bin:PATH
source /etc/profile

(5) 任意目录输入docker-compose测试一下


image.png

2.docker-compose管理tomcat和mysql

  • .yml文件介绍
    key: value的形式编写配置信息
    多个配置信息以换行/缩进的形式组合
version: '3.1'  # 对应指定版本
services:
  mysql:             # 服务名称
    restart: always # 只要docker启动,这个容器跟着启动
    image: daocloud.io/library/mysql:8.0.2   # 指定镜像路径
    container_name: mysql   # 指定容器名称
    ports:
      - 3306:3306   # 指定端口映射
    environment:
      MYSQL_ROOT_PASSWORD: root     # 指定root密码
      TZ: Asia/Shanghai       # 时区
    volumes:
      - /opt/docker_mysql_tomcat/mysql_data:/var/lib/mysql   # 数据卷
  tomcat:
    restart: always
    image: daocloud.io/library/tomcat:8.5.15-jre8
    container_name: tomcat
    ports:
      - 8080:8080
    environment:
      TZ: Asia/Shanghai 
    volumes:
      - /opt/docker_mysql_tomcat/tomcat_webapps:/usr/local/tomcat/webapps
      - /opt/docker_mysql_tomcat/tomcat_logs:/usr/local/tomcat/logs

3.使用docker-compose命令管理容器

docker-compose命令会默认在当前目录下寻找docker-compose.yml
(1) 启动容器docker-compose -up -d
(2)关闭删除容器docker-compose down
(3)开启|关闭|重启由docker-compose创建的容器docker-compose start|stop|restart
(4)查看容器docker-compose ps
(5)查看日志docker-compose logs -f

4.docker-compose配合dockerfile使用

# 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文件构建的自定义镜像
docker-compose up -d
重新构建自定义镜像
docker-compose build
运行前重新构建
docker-compose up -d --build

你可能感兴趣的:(docker-compose)