04-Dockerfile示例

简介: 本文提供三个Dockerfile示例:基于Tomcat部署WAR包、OpenJDK运行SpringBoot JAR包、Nginx托管Vue项目,涵盖时区设置、文件复制、端口暴露等配置,助力快速构建容器化应用。

04-Dockerfile示例

app-web模块maven编译后,会将app-web模块打包成war包,可以使用tomcat作为基础镜像进行制作。Dockerfile示例:


FROM tomcat:9.0.90-jre8

LABEL maintainer="lalala"


# 设置时区为东八区时间

RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" >/etc/timezone


# 复制编译的war包到tomcat的webapps目录

COPY target/myproject.war /usr/local/tomcat/webapps/myproject.war

WORKDIR /usr/local/tomcat


# 暴露tomcat的8080端口

EXPOSE 8080


# 启动tomcat

ENV JAVA_OPTS="-Djava.security.egd=file:/dev/./urandom"

ENTRYPOINT ["catalina.sh", "run"]

system-server模块maven编译后,会将system-server模块打包成jar包(SpringBoot项目),可以使用openjdk作为基础镜像进行制作。Dockerfile示例:



FROM openjdk:8u312-bullseye

LABEL maintainer="lalala"


# 设置时区为东八区时间

RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" >/etc/timezone


# 复制编译的jar包到容器的/usr/src目录

COPY target/system-server-1.0.jar /usr/src/system-server/system-server.jar

WORKDIR /usr/src/system-server


# 设置使用dev环境配置、使用8093端口

ENV JAVA_PARAMS=" -Djava.security.egd=file:/dev/./urandom --server.port=8093 --spring.profiles.active=dev"

# 暴露8093端口

EXPOSE 8093


# 带着配置项运行jar包

ENTRYPOINT ["java", "-jar" ,"/usr/src/system-server/system-server.jar"]

CMD ["$JAVA_PARAMS"]


vue项目Nginx基础镜像打包使用Nginx作为基础镜像。

1

2

3

4

5

6

7

8

9

10

11

12

13

FROM nginx:1.27.0

LABEL maintainer="lalala"


# 设置时区为上海东八区

RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" >/etc/timezone


# nginx 将编译生成的dist下的文件复制到容器/usr/share/nginx/html中

COPY dist/ /usr/share/nginx/html/myproject-vue/

# 复制nginx配置文件到容器/etc/

COPY nginx.conf /etc/nginx/nginx.conf


# 暴露80端口

EXPOSE 80

相关文章
|
1天前
|
数据采集 人工智能 安全
|
11天前
|
云安全 监控 安全
|
2天前
|
自然语言处理 API
万相 Wan2.6 全新升级发布!人人都能当导演的时代来了
通义万相2.6全新升级,支持文生图、图生视频、文生视频,打造电影级创作体验。智能分镜、角色扮演、音画同步,让创意一键成片,大众也能轻松制作高质量短视频。
938 150
|
2天前
|
编解码 人工智能 机器人
通义万相2.6,模型使用指南
智能分镜 | 多镜头叙事 | 支持15秒视频生成 | 高品质声音生成 | 多人稳定对话
|
16天前
|
机器学习/深度学习 人工智能 自然语言处理
Z-Image:冲击体验上限的下一代图像生成模型
通义实验室推出全新文生图模型Z-Image,以6B参数实现“快、稳、轻、准”突破。Turbo版本仅需8步亚秒级生成,支持16GB显存设备,中英双语理解与文字渲染尤为出色,真实感和美学表现媲美国际顶尖模型,被誉为“最值得关注的开源生图模型之一”。
1662 8
|
7天前
|
人工智能 自然语言处理 API
一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸
一句话生成拓扑图!next-ai-draw-io 结合 AI 与 Draw.io,通过自然语言秒出架构图,支持私有部署、免费大模型接口,彻底解放生产力,绘图效率直接爆炸。
617 152
|
9天前
|
人工智能 安全 前端开发
AgentScope Java v1.0 发布,让 Java 开发者轻松构建企业级 Agentic 应用
AgentScope 重磅发布 Java 版本,拥抱企业开发主流技术栈。
587 15
|
9天前
|
人工智能 自然语言处理 API
Next AI Draw.io:当AI遇见Draw.io图表绘制
Next AI Draw.io 是一款融合AI与图表绘制的开源工具,基于Next.js实现,支持自然语言生成架构图、流程图等专业图表。集成多款主流大模型,提供智能绘图、图像识别优化、版本管理等功能,部署简单,安全可控,助力技术文档与系统设计高效创作。
672 151