概述
平时都是直接打包成jar包,然后直接命令行运行。
但是不便于管理。容器化的概念已经推广开来了,正好可以把springboot
应用打包成镜像,用docker
运行。
docker容器
再用docker-compose
进行统一编排,方便管理。
dockerFile编写
# 基础镜像
FROM findepi/graalvm:java17-native
# author
MAINTAINER felix# 在容器中创建目录
RUN mkdir -p /app/qps-admin# 指定容器的工作路径
WORKDIR /app/qps-admin# 从宿主机复制jar文件到容器中,这里实际复制到容器的/app/qps-admin路径下
COPY ./qps-admin.jar ./qps-admin.jar
# 启动服务,$JAVA_OPTS在docker-compose的yml evn中声明
ENTRYPOINT ["sh", "-c", "java -jar $JAVA_OPTS qps-admin.jar"]
docker-compose配置文件
version: '3'
services:redis:image: qps-admin:latestcontainer_name: qps-adminrestart: always #重启docker后该容器也重启deploy:resources:limits:memory: 1024mbports:- "8080:8080"environment:# 时区上海TZ: Asia/Shanghai# 对应dockerfile中的变量JAVA_OPTS:-Xms512m-Xmx1024m-XX:MetaspaceSize=128m-XX:MaxMetaspaceSize=512m-XX:+HeapDumpOnOutOfMemoryErrorvolumes:# log- ./logs:/app/qps-admin/logsprivileged: true
制作docker镜像
#-t代表镜像名字,.代表当前目录 -f 指定dockerfile文件
docker build -t qps-admin:latest . -f ./dockfile
启动镜像
docker-compose up -d