idea集成 docker发布代码到服务器

前沿

  • 本次教材是基于本地 idea 集成 docker 插件,然后利用本地的 Dockerfile文件实现发布 web 项目到服务器。

第一步需要下载 docker 插件

在这里插入图片描述

第二步编写Dockerfile文件

#项目所依赖的jdk镜像
FROM openjdk:8
#这里的 /tmp 目录就会在运行时自动挂载为匿名卷,任何向 /tmp 中写入的信息都不会记录进容器存储层
VOLUME /tmp
#将maven构建好的jar添加到镜像中,第二个为别名
#ADD target/*.jar app.jar

#复制上下文目录下的target/springboot-demo-docker-0.0.1-SNAPSHOT.jar 到容器里
COPY target/ql-center-endpoint-1.0-SNAPSHOT.jar app.jar

# 设置环境变量,指定使用的配置文件
ENV SPRING_PROFILES_ACTIVE=online
ENV TZ=Asia/Shanghai

#暴露的端口号(和项目端口号等同)
EXPOSE 8087

# 开放远程调试端口
#ENV JAVA_TOOL_OPTIONS="-agentlib:jdwp=transport=dt_socket,address=8002,server=y,suspend=n"
#EXPOSE 8002

#镜像所执行的命令
ENTRYPOINT exec java -jar -Xmx512m -Xms512m app.jar

需要注意的几点:
● 此Dockerfile文件 存放位置是:项目启动@SpringBootApplication 的 src 同层,如下图
● ENV SPRING_PROFILES_ACTIVE=online:可以指定使用一份线上的文件配置:application-online.properties
● 开放远程调试端口,开发的时候可能需要,上线的时候一定要关闭。

在这里插入图片描述

第三步编写 docker 发布脚本

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

点+ 添加一条 maven 命令:
clean package -Dautoconfig.interative=false -Dmaven.test.skip=true -Dmaven.javadoc.skip=true

注意点:
● 添加的时候选择 Dockerfile。
● 第一个 DockerFile点后面的拉下剪头,理论上会自动识别出来。
● Image tag:取一个自己喜欢的名字。模板 xxx:<版本号>
● Container name:容器名字取一个。
● Environment variables:添加不同环境使用不同的配置文件
● Run options: 相当于我们的 docker run 后面的一些参数
● Before launch:就是在执行发布之前需要干嘛,这边建议就是编译下整个项目
○ clean package -Dautoconfig.interative=false -Dmaven.test.skip=true -Dmaven.javadoc.skip=true

第四步编写 docker 服务器连接脚本,此处采用 tcp 的方式,
注意服务器上面需要开通本机ip白名单,和开通端口号:2375,不然无法连接通

在这里插入图片描述

到此为止就可以愉快的编译发布!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值