docker-compose配置文件+Dockerfile文件详解(基础版)

以部署微服务为例:

1、 docker-compose配置文件详解

//  指定 compose 文件的版本
version: '3'    
// 定义所有的 service 信息
services:
  jeecg-boot-mysql:    //一个 service 的名称
    build:             //构建路径(指定 Dockerfile 所在文件夹的路径) 
      context: ../db   
    environment:       // 设置镜像变量
      MYSQL_ROOT_PASSWORD: root
      MYSQL_ROOT_HOST: '%'
      TZ: Asia/Shanghai
    restart: always    // 指定docker容器(服务)总是运行
    container_name: jeecg-boot-mysql  // 指定容器的名称 
    command:           // 覆盖容器启动后默认执行的命令
      --character-set-server=utf8mb4
      --collation-server=utf8mb4_general_ci
      --explicit_defaults_for_timestamp=true
      --lower_case_table_names=1
      --max_allowed_packet=128M
      --default-authentication-plugin=caching_sha2_password
    ports:             // 映射端口
      - 3306:3306

  jeecg-boot-redis:
    image: redis:5.0   //指定服务的镜像名称或镜像 ID
    ports:
      - 6379:6379
    restart: always
    container_name: jeecg-boot-redis
    hostname: jeecg-boot-redis
    
  jeecg-boot-nacos:      #服务名
    restart: always        #指定docker容器(服务)总是运行
    build:
      context: ./  jeecg-boot-nacos
    ports:                              
      - 8848:8848                          #映射端口
    container_name:   jeecg-boot-nacos      #容器名
    hostname:   jeecg-boot-nacos            #主机名

   jeecg-boot-gateway:
    restart: on-failure
    build:
      context: ./jeecg-boot-gateway
    ports:
      - 9999:9999
    depends_on:
      - jeecg-boot-nacos
    container_name: jeecg-boot-gateway
    hostname: jeecg-boot-gateway

  jeecg-boot-system-cloud-start:
    depends_on:                       #启动容器排序
      - jeecg-boot-nacos
	  - jeecg-boot-gateway
    build:
      context: ./jeecg-boot-system-cloud-start     # 指定 Dockerfile 文件所在的路径
    container_name: jeecg-boot-system-cloud-start
    hostname: jeecg-boot-system-cloud-start
    restart: on-failure              #当出现 on-failure 报错时, 容器重新启动
    environment:
      - TZ=Asia/Shanghai
	  
  jeecg-boot-manage-start:
    depends_on:                       #启动容器排序
      - jeecg-boot-nacos
	  - jeecg-boot-gateway
	  - jeecg-boot-system-cloud-start
    build:
      context: ./jeecg-boot/jeecg-boot--manage-start     # 指定 Dockerfile 文件所在的路径
    container_name: jeecg-boot-manage-start
    hostname: jeecg-boot-manage-start
    restart: on-failure              #当出现 on-failure 报错时, 容器重新启动
    environment:
      - TZ=Asia/Shanghai
 

2、Dockerfile 配置文件详解

// 基于Java8的基础镜像
FROM anapsix/alpine-java:8_server-jre_unlimited
// 镜像构建的时候需要运行的命令
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
// 创建镜像目录
RUN mkdir -p /jeecg-boot-manage-start
// 镜像的工作目录
WORKDIR /jeecg-boot-manage-start
// 端口
EXPOSE 7001
// 添加内容一个压缩包
ADD ./jeecg-boot-manage-start/target/jeecg-boot-manage-start.jar ./
// 指定这个容器启动的时要运行的命令
CMD sleep 1;java -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar jeecg-boot-manage-start.jar

3、脚本执行命令

// 执行脚本 docker-compose.yml 命令
docker-compose up -d
// 执行其他脚本命令  例如: docker-compose-base.yml
docker-compose -f docker-compose-base.yml up -d
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值