spring-boot-plus docker-compose快速启动

spring-boot-plus docker-compose快速启动

spring-boot-plus简介

spring-boot-plus是一套集成spring boot常用开发组件的后台快速开发框架
详见官网 https://springboot.plus/

使用docker-compose启动

安装docker

安装docker可参考 菜鸟教程 Docker 安装
其他系统安装中,已包含docker-compose,Linux要额外安装docker-compose,请自行百度
笔者为window10系统,使用Docker for Windows Installer安装,另推荐使用portainer界面管理docker

打包spring-boot-plus.jar

  1. 复制application-local.yml文件,重命名为application-docker.yml,修mysql地址、redis地址为mysqlredis
    在这里插入图片描述
  2. 修改pom.xml,添加docker打包配置
<profile>
    <id>docker</id>
    <properties>
        <profileActive>docker</profileActive>
    </properties>
    <activation>
        <activeByDefault>false</activeByDefault>
    </activation>
</profile>
  1. 运行命令打包
mvn -DskipTests -Pdocker clean package

docker-compose启动所需文件

  1. 创建文件spring-boot-plus/docker-compose.yml
    service名称可自行修改,mysql、redis对应前面application-docker.yml中mysql、redis访问路径配置
version: '2'
services:
  app:
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - "8888:8888" #访问app应用端口
    environment:
      # 添加spring.config.additional-location环境变量,配置外放
      "spring.config.additional-location": /config/
    volumes:
      # app配置目录
      - ${APP_DIR}/config:/config
      - ${APP_DIR}/tmp:/tmp
    depends_on:
      # 依赖
      - mysql
      - redis

  mysql:
    image: docker.io/mysql:5.7
    ports:
      - "3341:3306" # mysql本地访问端口,可注释
    environment:
      #      MYSQL_DATABASE: spring-boot-plus
      MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
      MYSQL_ROOT_HOST: '%'
    volumes:
      # mysql数据库数据文件
      - ${MYSQL_DIR}/data:/var/lib/mysql
    restart: always

  redis:
    image: redis
    #    ports:
    #          - 6379:6379 # redis本地访问端口
    volumes:
      - ${REDIS_DIR}/conf:/usr/local/etc/redis # redis配置文件目录
      - ${REDIS_DIR}/data:/data # redis数据目录
    command:
      # 执行的命令
      redis-server /usr/local/etc/redis/redis.conf
    restart: always
  1. 创建文件spring-boot-plus/.env
# .env文件内容

# app
APP_DIR=/d/ProgramData/docker-data/spring_boot_plus

# redis
REDIS_DIR=/d/ProgramData/docker-data/spring_boot_plus/redis

# mysql
MYSQL_DIR=/d/ProgramData/docker-data/spring_boot_plus/mysql
MYSQL_ROOT_PASSWORD=root # 用户root密码
  1. 创建文件spring-boot-plus/Dockerfile
FROM java:8
VOLUME /tmp
ADD spring-boot-plus.jar app.jar
RUN bash -c 'touch /app.jar'
ENV JAVA_OPTS=""
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar"]
  1. 复制target/spring-boot-plus.jar到spring-boot-plus/spring-boot-plus.jar

使用docker-compose命令

进入spring-boot-plus目录,运行命令

docker-compose up #启动,控制台同时打印所有容器的输出信息
docker-compose up -d #后台启动
docker-compose up -d --build #强制执行Dockerfile文件,后台启动
docker-compose stop #停止docker-compose.yml文件相关容器
docker-compose down #移除docker-compose.yml文件相关容器

启动后,portainer containers界面信息展示
在这里插入图片描述

可通过localhost:8888/docs访问swagger页面

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值