docker-compose部署java项目

docker-compose是定义和运行多容器的工具。换句话说就是通过配置yml文件来运行容器,简化了每次输入docker run等命令,把这些命令配置在yml文件统一管理,而且可以用一个yml文件一次启动多个容器,启动时还可以设置各个容器的依赖关系等。

如下为测试docker-compose启动java程序
1. docker-compose.yml

version: '3'
services:
  java05:
    build: .
    ports:
    - "3390:8080"
    volumes:
    - "/home/xiaoqu/dockerDemo/dockerLog:/log"
    environment:
      TZ: Asia/Shanghai

2. Dockerfile

FROM java:8
COPY demo01.jar demo01.jar
ENTRYPOINT [“java”,“-Djava.security.egd=file:/dev/./urandom”,“-jar”,“/demo01.jar”]

3. demo01.jar

链接:https://pan.baidu.com/s/1ocGEk9N3L4eVVah8nsZErQ?pwd=6666

4. 运行容器

把这三个文件放在一个文件中,运行 docker-compose up
在这里插入图片描述

5.停止运行并删除容器

运行docker-compose down ,会停止容器并删除容器

在这里插入图片描述
docker-compose简单命令介绍

version: '3'   #指定本 yml 依从的 compose 哪个版本制定的
services:   #容器集合(下面可以写多个容器)
  java05:   #java服务名称  可自定义
    #build: . #Dockerfile 文件的路径 如果写个点表示在当前目录,且文件名为Dockerfile,也可如下面一样配置详细信息
    build:
      context: ./dir  #存放Dockerfile的目录
      dockerfile: Dockerfile-dev #Dockerfile的名称
      args:
        buildno: 1  #添加构建参数,这是只能在构建过程中访问的环境变量
      labels:
        - "com.example.description=Accounting webapp"  #设置构建镜像的标签
        - "com.example.department=Finance"
      target: prod  #多层构建,可以指定构建哪一层
    ports:   #容器内容的端口映射
    - "3390:8080"
    volumes: #容器卷的挂载
    - "/home/xiaoqu/dockerDemo/dockerLog:/log"
    environment:
      TZ: Asia/Shanghai #设置环境变量,不设置容器内和外部的系统时间容易不一致
    depends_on:
      - redis #设置依赖关系,先启动redis再启动java05
  redis:  #redis服务名称 可自定义 
    image: redis #不通过Dockerfile构建镜像,直接获取镜像

docker-compose相关命令

docker-compose up #构建镜像并启动服务
docker-compose up -d #构建镜像并启动服务(后台启动)
docker-compose stop #停止所有服务 后面如果+容器名 就是 停止指定的容器
docker-compose restart #重启服务 后面如果+容器名 就是重启指定的容器
docker-compose start #启动文件中所有容器 后面如果+容器名 就是启动指定的容器
docker-compose build #构建服务的镜像
docker-compose ps #查看文件中所有容器的信息
docker-compose logs #查看容器日志
docker-compose exec 容器名称 command #在指定的容器中执行命令
docker-compose down #停止容器并删除容器,但不会删除构建的镜像
docker-compose pause #暂停容器 后面如果+容器名 就是暂停指定的容器
docker-compose unpause #恢复容器 后面如果+容器名 就是恢复指定的容器

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值