web服务以Jetty作为伺服器并以docker打镜像部署

2023-12-21 23:02:11

web服务以Jetty作为伺服器并以docker打镜像部署

一:build-image.sh打镜像脚本文件

## test-web自定义镜像名
## 1.0自定义镜像版本tag
## 注意最后{空格加.}
docker build -t test-web:1.0 .

二:Dockerfile文件

FROM www.内部公司镜像公共仓库.com:8080/docker-public/jetty包含jdk打好的镜像
ENV LANG C.UTF-8
LABEL project="yourWebName"
RUN mkdir -p /app/docker/deploy
COPY yourWebName.WAR /app/docker/deploy/yourWebName.WAR
COPY yourWebName-jetty.xml /app/docker/deploy/yourWebName-jetty.xml
COPY run.sh /app/docker/deploy/run.sh
RUN chmod 755 /app/docker/deploy/run.sh
EXPOSE 8080
ENTRYPOINT ["sh", "-c", "/app/docker/deploy/run.sh"]

三:run.sh文件


#!/bin/bash

#jetty start web 
JAVA_CMD="java -jar"
#jetty启动参数
JAVA_CMD=$JAVA_CMD" Djetty.http.port=8080"
JAVA_CMD=$JAVA_CMD" Dfile.encoding=UTF-8"
#你的web服务个性化启动参数
JAVA_CMD=$JAVA_CMD" D变量前缀.变量名=变量值"
JAVA_CMD=$JAVA_CMD" D变量前缀.变量名=变量值"
#...等
#jetty起服务相关参数
JAVA_CMD=$JAVA_CMD" /容器内jetty.home目录/start.jar"
JAVA_CMD=$JAVA_CMD" --module=http,deploy,jsp"
JAVA_CMD=$JAVA_CMD" -Dapp.context=/yourWebContext"
JAVA_CMD=$JAVA_CMD" -Dapp.war=/app/docker/deploy/yourWebName.WAR"
JAVA_CMD=$JAVA_CMD" /app/docker/deploy/yourWebName-jetty.xml"
echo $JAVA_CMD
echo "---------------------jetty-------------------------------------"
#把标准错误输出重定向到标准输出
$JAVA_CMD 2>&1

四:jetty.xml文件

这个网上搜索jetty.xml文件

五:start-docker.sh脚本文件

# docker build -t test-web:1.0 .中test-web:1.0与下面启动保持一致
docker run -d --name 自定义容器名 -p 18080:8080 test-web:1.0

文章来源:https://blog.csdn.net/weixin_44188105/article/details/135131825
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。