最全IDEA配置Docker发布Spring Boot项目

前言

最近学习了idea中使用docker快速部署springboot项目,分享给大家

1.Docker开启远程访问
vim /usr/lib/systemd/system/docker.service
# 在 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock 加入 <-H tcp://0.0.0.0:2375> 如下图所示
# 重启docker 
systemctl daemon-reload
systemctl restart docker

在这里插入图片描述
有防火墙记得开启防火墙2375端口
firewall-cmd --zone=public --add-port=2375/tcp --permanent
firewall-cmd --reload # 配置立即生效

2.IDEA安装Docker插件

最全IDEA配置Docker发布Spring Boot项目_第1张图片
File-setting 搜索docker 配置docker服务器连接
最全IDEA配置Docker发布Spring Boot项目_第2张图片

3.在Spring boot 项目根路径下创建DockerFile文件

<1>.使用Java:8为基础镜像部署

#这是基础镜像
FROM java:8
# 维护者信息
MAINTAINER youxinlegu
VOLUME /tmp
#复制jar包到镜像中,并且将名字改成app.jar
ADD ./target/lean-gateway-0.0.1-SNAPSHOT.jar app.jar
#通过文件链接的方式修改 时区
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
#在容器启动的时候运行命令,来启动我们的项目
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

<2>.使用skywalking-java-agent为基础镜像部署,集合SkyWalking使用

#设置skywalking-java-agent为基础镜像 https://hub.docker.com/r/apache/skywalking-java-agent/tags
FROM apache/skywalking-java-agent:8.13.0-java8
# 维护者信息
MAINTAINER youxinlegu
VOLUME /tmp
#复制jar包到镜像中,并且将名字改成app.jar
ADD ./target/lean-gateway-0.0.1-SNAPSHOT.jar app.jar
#通过文件链接的方式修改 时区
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 设置 Skywalking agent SW_AGENT_COLLECTOR_BACKEND_SERVICES:skywalking服务地址 SW_AGENT_NAME:服务名称
ENV SW_AGENT_COLLECTOR_BACKEND_SERVICES="10.16.103.11:11800" \
    SW_AGENT_NAME="lean-gateway-test"
CMD java -javaagent:/skywalking/agent/skywalking-agent.jar \
         -jar app.jar
4.编辑配置dockerfile

最全IDEA配置Docker发布Spring Boot项目_第3张图片

5.在services页签连接远程的docker容器

最全IDEA配置Docker发布Spring Boot项目_第4张图片

6.选中配置的dockerfile点击启动按钮完成安装

在这里插入图片描述

问题解决

1.解决docker面板log中文乱码问题
Help->Edit Costom VM Options 编辑文本在末尾加入 -Dfile.encoding=UTF-8
重启idea即可

2.解决nacos2.0.3版本的客户端在docker运行报错“docker could not create Vfs.Dir from url. ignoring the exception and continu”,这个与openJDK8有关,所有请使用nacos2.1.0更高版本即可,推荐spring cloud alibab 2.2.9.RELEASE

你可能感兴趣的:(docker,intellij-idea,spring,boot)