IDEA 一键部署Docker

以部署示例服务(sevnce-demo)为例。

配置服务器


地址、账号、密码根据实际情况填写

配置镜像仓库

地址、账号、密码根据实际情况填写

编写Dockerfile

在sevnce-demo根目录下右键,选择创建Dockerfile。

dockerfile 复制代码
# 基础镜像
FROM sevnce-registry.cn-chengdu.cr.aliyuncs.com/sevnce/jdk:17.0.5

# 运行的命令
RUN rm -rf /var/lib/apt/lists/* \
        && localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8

# 设置语言编码
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8
# 设置默认时区
ENV TZ=Asia/Shanghai

# 将工作目录设置为 /myapps
WORKDIR /usr/local/myapps

# 添加
ADD target/sevnce- demo -*.jar sevnce- demo .jar

# 指定运行环境
SHELL ["/bin/bash", "-c"]

# 运行的命令
RUN touch appstart.sh \
        && chmod +x appstart.sh \
        && mkdir /logs\
        && echo 'nohup java -Djava.security.egd=file:/dev/./urandom \
                 -Dspring.config.location=/usr/local/config/ \
                 -jar /usr/local/myapps/sevnce- demo .jar > /logs/startLog.file 2>&1 &' > appstart.sh

# 启动时运行的命令
ENTRYPOINT /usr/local/myapps/appstart.sh && tail -F /logs/startLog.file

配置运行参数

  1. 配置预执行Maven命令



复制代码
clean install -U -DskipTests

点击ok,再次添加:

复制代码
clean package -U -DskipTests
  1. 配置镜像名称
复制代码
sevnce-registry.cn-chengdu.cr.aliyuncs.com/sevnce/sevnce-demo:1.0.0
  1. 配置容器名称
复制代码
sevnce-demo
  1. 配置运行参数
  1. 配置端口映射
  1. 配置运行命令
复制代码
-d --restart=on-failure
  1. 配置目录挂载

以上根据实际情况填写

运行Dockerfile

  1. 运行Dockerfile前,需要确保服务器连接成功。
  1. 配置启动参数。


切记更改版本号!

  1. 等待日志出现如下标识代表启动成功。

推送镜像

为了方便在其他服务器快速部署,可以推送镜像到镜像仓库。


等待进度完成即推送成功

相关推荐
harmful_sheep5 分钟前
java group by常见用法
java·开发语言·python
SKH.11 分钟前
Linux软件编程(6)线程间通信
java·开发语言·数据库
Rain的Java大神之路16 分钟前
PC版网站被狂刷怎么处理
java·数据库·redis·后端·mysql·web安全·运维开发
宸津-代码粉碎机33 分钟前
AI工程化高阶实战|从Demo到生产落地核心架构、全套源码与避坑指南
java·大数据·开发语言·人工智能·python·架构
泡海椒2 小时前
告别手写 HTTP 模板!JQuick-Curl:直接把 curl 命令跑在 Java 中
java·网络协议·http
珍珠先生2 小时前
第2章 集合框架深度:HashMap 原理与并发集合
java
FreeTinker2 小时前
Java文件服务器的技术选型与实现路径:从嵌入式工具到企业级系统
java·服务器·开发语言
ly76892 小时前
Java 21 到 Java 26 新特性详解:虚拟线程、模式匹配、结构化并发、HTTP/3 与 AOT
java·jvm
我星期八休息3 小时前
Linux I/O多路转接—epoll
java·linux·运维·服务器·开发语言·jvm·算法
学长毕业设计3 小时前
基于springboot的云南中草药知识普及管理网站的设计与开发(源码+文档+讲解视频)
java·spring boot·后端