docker部署-springboot项目脚本

本文档介绍了如何使用Docker部署SpringBoot项目,详细阐述了从制作Dockerfile到生成镜像,再到镜像仓库提交和环境部署的全流程。讨论了不同版本的打包策略,包括war包、独立jar、zip包以及配置文件处理。还提到了Spring Boot应用在Docker中运行时遇到的类路径问题及其解决方案。
摘要由CSDN通过智能技术生成

2.docker镜像制作及部署工作任务(吴灵辉,赵露露,张旭协助)
工作目标:开发源环境脚本自动生成镜像文件(加版本号 x.x.x),提交至镜像库,在另外环境从镜像库自动部署启动,
总流程:sousa项目docket自动制作dockfile->进入仓库->部署.3环境
1)项目svn://39.104.16.40:3510/manufacture/codeSource/trunk/sousa
2)环境 39.104.16.40 /home/cmes/workspace/sousa/sousa,从这里制作dockfile,能够通过shell脚本自动生成sousa镜像,
3)镜像仓库:一会儿提供
4)部署环境:39.105.142.3,从镜像库拉取镜像,并能启动运行@小太阳 955 @啦啦啦拉拉啦啦啦

不要弄错了 sousa那个项目下
这次制作做的镜像放到sousa那里
先学会弄镜像,脚本自动生成镜像然后在学提交镜像库
root rootroot12345

思路:

#! /bin/sh

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_162/
export PATH=$PATH:$JAVA_HOME/bin/
export CLASSPATH=.

# 获得mvn版本号。
VERSION=$(mvn org.apache.maven.plugins:maven-help-plugin:3.1.0:evaluate -Dexpression=project.version -q -DforceStdout)
# 截取一下.
VERSION=`echo ${VERSION%.*}`
# 获得mvnartifactId 镜像名字。  这里的war设置了名称。打包后
# ARTIFACT_ID=$(mvn org.apache.maven.plugins:maven-help-plugin:3.1.0:evaluate -Dexpression=project.artifactId -q -DforceStdout)
# docker hub url
URL=ip:50002


# 检出
# svn checkout svn://39.104.16.40:3510/manufacture/codeSource/trunk/sousa
# 更新源代码。
svn update --username wulinghui --password wulinghui@123

# mvn打包。 建议:如果要跳过测试,在pom.xml里面添加吧。
# mvn install -Dmaven.test.skip=true
mvn clean package

WAR_NAME=`ls target | grep .war`
# 由pom文件决定.
#TAG_URL=$URL/$ARTIFACT_ID:$VERSION 
# 由用户输入
TAG_URL=$URL/$1:$VERSION

# docker 
# 备份一下。
rm -rf docker.bak
mv -f docker docker.bak
# 新建
mkdir docker
# 复制到docker文件中,注意这里的war应该可以直接部署的,不会出现war依赖问题。这个在pom.xml里面配置就行了。
cp target/$WAR_NAME docker/
# 重命名
# mv docker/$ARTIFACT_ID-$VERSION.war docker/$ARTIFACT_ID.war
# 编写dockerFile文件
cat > docker/Dockerfile <<EOF
from tomcat:8.0
MAINTAINER ys
COPY $WAR_NAME /usr/local/tomcat/webapps
EOF
# build Dockerfile 
cd docker
docker build -t $TAG_URL . 

# 登录
docker login -u admin -p Docker123 $URL
# push 仓库。
docker push $TAG_URL
# 注销.
#docker logout

# 登录ssh到其他机器,执行pull run 等等部署

龙哥,做完了。
用户使用如下:
cd /home/cmes/workspace/sousa/sousa
sh -x run-boot.sh sousa/sousa
生成的docker-tag: pom-version对应的是pom.xml的version
ip:50002/sprism-service/sousa:pom-version

  1. 第1版,打war
 <build>
        <defaultGoal>war</defaultGoal>
        <sourceDirectory>src/main/java</sourceDirectory>

        <plugins>
            <!--compile -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.2</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
                <executions>
                    <execution>
                        <id>default-compile</id>
                        <phase>compile</phase>
                        <goals>
                            <goal>compile</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>



            <!--war -->
            <plugin>
                <artifactId>ma
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值