windows上项目打包自动编译为docker镜像到远程linux服务器

2021-07-02 13:11

阅读:305

标签:java   tcp   .repo   项目打包   res   pts   png   mon   使用   

一,pom文件:

中增加 springboot (本机测试springboot为随意取名)

    UTF-8springboot
        UTF-81.8

加入maven插件“docker-maven-plugin”

org.springframework.boot
                spring-boot-maven-plugin
            com.spotify
                docker-maven-plugin
                1.0.0build-imagepackagebuild${docker.image.prefix}/${project.artifactId} http://192.168.163.129:2375src/main/docker/${project.build.directory}${project.build.finalName}.jar

        

 

二,Dockerfile:(ADD行为项目打包生成的jar包)

FROM frolvlad/alpine-oraclejdk8:slim
VOLUME /tmp
ADD eurekademo-0.0.1-SNAPSHOT.jar app.jar
RUN sh -c ‘touch /app.jar‘
ENV JAVA_OPTS=""
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]

技术分享图片

 

三,在linux服务器上装好docker,我的linux版本为centos7,这里不建议使用#yum install docker方式安装,因为这种方式安装的版本比较旧,而且在配置远程api时要好多错误,建议使用方式

#curl -fsSL https://get.docker.com/ | sh或#yum install docker-engine,这里以17.0.3-ce版本为例,使用

#docker version命令即可验证是否安装成功,接下来要想在windows中操作远程linux中的docker,那前提是必须

开启docker远程API,修改docker配置文件#vi /usr/lib/systemd/system/docker.service ,进入编辑模式后,将ExecStart这一行后面加上 -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock ,改完后如下所示

ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock ,这里就写4个0,你可别改成自己的ip哦,保存后退出,重新加载配置文件#systemctl daemon-reload ,启动#systemctl restart docker.service ,

输入#netstat -anp|grep 2375 显示docker正在监听2375端口,输入#curl 127.0.0.1:2375/info 显示一大堆信息,证明远程api就弄好了

iptables放行2375端口 (否则会报连接超时)
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 2375 -j ACCEPT


四,在windows系统环境变量中新建DOCKER_HOST,值为tcp://http://192.168.163.129:2375,(你改成你自己的docker服务器ip地址)

 

五,使用mvn clean package docker:build -DskipTests 打包并生成镜像。

windows上项目打包自动编译为docker镜像到远程linux服务器

标签:java   tcp   .repo   项目打包   res   pts   png   mon   使用   

原文地址:https://www.cnblogs.com/a1260700062/p/9923508.html


评论


亲,登录后才可以留言!