docker+jenkins+gitlab+dockerfile部署配置

第一步:docker+jenkins+gitlab自动化部署配置,这里不说了,请看我的另一篇文章

第二步:pom.xml和Dockerfile配置内容

pom.xml

  <build>
        <finalName>${project.artifactId}-${project.version}</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <version>1.0.0</version>
                <!--docker镜像相关的配置信息-->
                <configuration>
                    <!--镜像名,这里用工程名-->
                    <imageName>${project.artifactId}-${project.version}</imageName>
                    <!--Dockerfile文件所在目录-->
                    <dockerDirectory>${project.basedir}/src/main/resources</dockerDirectory>
                    <!--TAG,这里用工程版本号-->
                    <imageTags>
                        <imageTag>${project.version}</imageTag>
                    </imageTags>
                    <dockerHost>http://你的ip:2375</dockerHost>
                    <registryUrl>http://你的ip:5000</registryUrl>
                    <pushImage>false</pushImage>
                    <imageName>你的ip:5000/${project.artifactId}:${project.version}</imageName>
                    <!--构建镜像的配置信息-->
                    <resources>
                        <resource>
                            <targetPath>/</targetPath>
                            <directory>${project.build.directory}</directory>
                            <include>${project.artifactId}-${project.version}.jar</include>
                        </resource>
                    </resources>
                </configuration>
            </plugin>
        </plugins>
    </build>

 

/src/main/resourcesDockerfile的内容

FROM java:8
ENV project bdkt-eureka
ENV version 1.0-RELEASE
ENV home_path /home
WORKDIR $home_path
ADD /$project-$version.jar $home_path/$project.jar
ENTRYPOINT ["java", "-jar", "bdkt-eureka.jar"]

FROM java:8   依赖于jdk
ENV project bdkt-eureka   环境变量 key value
ENV version 1.0-RELEASE
ENV home_path /home
WORKDIR $home_path  指定的工作目录
ADD /$project-$version.jar $home_path/$project.jar  复制功能
ENTRYPOINT ["java", "-jar", "bdkt-eureka.jar"]  相当于 java -jar bdkt-eureka.jar,这个命令就是把几个逗号里面的内容用空格拼接出来执行

第三步:构建任务中需要的配置

Pre Steps  1

612a2907e5e2f027e5e1624e3c4f9807891.jpg

bdkt-parent/bdkt-basics/bdkt-eureka/pom.xml
clean install

 

Pre Steps 2

3c608433724d5604928227596f7e11e58be.jpg

内容为:

#!/bin/bash
#镜像名称
image_name=47.111.115.253:5000/bdkt-eureka
#启动的镜像运行的名字
run_image_name=bdkt-eureka
#版本
version=1.0-RELEASE
result=$(docker ps | grep "$run_image_name")
if [[ "$result" != "" ]]
then
echo "stop $run_image_name"
docker stop $run_image_name
fi
result1=$(docker ps -a | grep "$run_image_name")
if [[ "$result1" != "" ]]
then
echo "rm $run_image_name"
docker rm $run_image_name
fi
result2=$(docker images | grep "$image_name")

if [[ "$result2" != "" ]]
then
echo "rmi $image_name:$version"
docker rmi $image_name:$version
fi

Pre Steps 3

8111c18bcfda7ffeafc15384425e97c0f71.jpg

内容为:

clean package -f bdkt-parent/bdkt-basics/bdkt-eureka/pom.xml -DskipTests docker:build

 

 

Pre Steps 3

bea8b6bd3c01ef45c83848c2943e9c95b0f.jpg

内容为:

其中ssh site是自己配置的,详细看我之前文章

docker run --name bdkt-eureka -p 8100:8100  -idt 47.111.115.253:5000/bdkt-eureka:1.0-RELEASE
docker logs bdkt-eureka

 

转载于:https://my.oschina.net/u/3962987/blog/3067653

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值