web服务以Jetty作为伺服器并以docker打镜像部署
一:build-image.sh打镜像脚本文件
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文件
JAVA_CMD="java -jar"
JAVA_CMD=$JAVA_CMD" Djetty.http.port=8080"
JAVA_CMD=$JAVA_CMD" Dfile.encoding=UTF-8"
JAVA_CMD=$JAVA_CMD" D变量前缀.变量名=变量值"
JAVA_CMD=$JAVA_CMD" D变量前缀.变量名=变量值"
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 run -d --name 自定义容器名 -p 18080:8080 test-web:1.0