微服务容器化改造说明文档

一、主旨:存量项目未修改代码使项目可打包成镜像方式的以及所有新项目请参照本说明书进行修改。后续在开发测试环境部署新项目都采用容器化部署。

 

二、具体内容:要将微服务容器化需要修改pom.xml文件和新增src/main/dokcer/Dockerfile文件。

具体修改如下:

2.1. pom.xml文件修改

    1.在<properties>下添加镜像仓库的路径的自定义属性

<aliyun-sdk-oss.version>3.3.0</aliyun-sdk-oss.version>
<docker.repostory>registry.cn-shenzhen.aliyuncs.com</docker.repostory>
<docker.registry.name>xxxx_microservices</docker.registry.name>

 

    2.在 <build></build>下添加打包上传到镜像仓库的配置

 

<!-- 使用maven 配置构建 -->
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>1.0.0</version>
<configuration>
<dockerDirectory>target/docker</dockerDirectory>
<imageName>${docker.repostory}/${docker.registry.name}/${project.artifactId}-${profileActive}</imageName>

<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
<serverId>docker-aliyun</serverId> 
<registryUrl>${docker.repostory}</registryUrl> 
<pushImage>true</pushImage> 
</configuration>
</plugin>

 

 

3.在 <resources></resources>添加以下配置:

<!-- 使用@@站位符,输出Dockerfile至docker文件夹 -->
<resource>
<directory>src/main/docker</directory>
<filtering>true</filtering>
<includes>
<include>**/Dockerfile</include>
</includes>
<targetPath>../docker</targetPath>
</resource>

2.2. 添加Dockerfile文件

 

在src/main下创建新目录docker,在目录下新增文件Dockerfile,内容如下:

ARG activenv
FROM java:8-jre
ENV arch @project.artifactId@
ENV prg @project.build.finalName@.jar
ENV JAVA_OPTS="-Xms512m -Xmx512m"
#ENV activenv=""
EXPOSE 8084
RUN mkdir -p /vol1/appserver/$arch
WORKDIR /vol1/appserver/$arch
#VOLUME /vol1/logs
ADD $prg .
#设置时区
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN sh -c echo 'Asia/Shanghai' >/etc/timezone
#ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar"]
ENTRYPOINT [ "sh", "-c", "java -Dfile.encoding=utf-8 $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar $prg  > /dev/null 2>&1" ]

 

 

----------------------------------------------------------------------------------

附:  打包镜像的命令:将会给镜像打上tag并推送到在pom.xml里面设置的镜像仓库

mvn clean package -P dev docker:build -DdockerImageTags=$JOB_NAME$BUILD_NUMBER
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值