详解IDEA连接远程服务器Docker部署SpringBoot项目
小编这次要给大家分享的是详解IDEA连接远程服务器Docker部署Spring Boot项目,文章内容丰富,感兴趣的小伙伴可以来了解一下,希望大家阅读完这篇文章之后能够有所收获。
成都创新互联专注于恩施土家企业网站建设,响应式网站建设,商城系统网站开发。恩施土家网站建设公司,为恩施土家等地区提供建站服务。全流程定制制作,专业设计,全程项目跟踪,成都创新互联专业和态度为您提供的服务
开始前的准备工作
拥有一台云服务器,我的是腾讯云服务器(CentOS7)
腾讯云服务器安装Docker,我的版本是Docker 19.03.9,关于安装和配置镜像加速器可以查阅我的另一篇博文:https://www.jb51.net/article/188048.htm,其中有详细的讲解
Windows上有安装IDEA
正式开始工作
第一步:配置Docker,开启远程访问(注:仅供学习参考,实际生产环境万万不可,会产生很大的安全风险),默认端口是2375,也可以修改为其他端口
1、修改/lib/systemd/system/docker.service文件
vim /lib/systemd/system/docker.service
在ExecStart
后面追加-H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock
修改完记得写保存退出命令 :wq
2、重新加载配置文件,重启docker,使得刚才的配置生效
#重新加载配置文件 systemctl daemon-reload #重启docker服务 systemctl restart docker
3、使用curl命令检查是否开启
#curl下载docker的服务信息 curl http://127.0.0.1:2375/info
如果有返回说明,就证明开启成功了,可以看到我的Docker版本,镜像加速器地址等其他信息,但是这时候远程可能依然访问不了
4、配置腾讯云安全组规则,入站规则中开放2375端口,使得可以远程访问(阿里云都是一样)
最后点完成就OK了
5、检查端口是否可以远程访问,在本地浏览器输入:http://服务器IP地址:2375/info
第二步:对项目进行配置,连接远程docker
1、安装Docker插件,去Plugins搜索Docker,然后直接安装就行了,如果,这是我已经安装过的,安装完成后重启IDEA,就有docker插件了
2、配置连接远程docker,打开Docker插件,新建连接,在Engine API URL处输入服务器IP地址:2375,然后,不出意外,下方都会出现Connection successful,这样连接远程服务器的Docker就成功了
3、编辑项目pom.xml文件,在Spring Boot项目中添加docker-maven-plugin
插件
com.spotify docker-maven-plugin 1.0.0 build-image package build wbb/${project.artifactId} latest ${project.basedir} http://134.175.236.221:2375 / ${project.build.directory} ${project.build.finalName}.jar
4、在项目根目录下创建Dockerfile文件
Dockerfile文件内容
Dockerfile保留字的解析可以查阅我的另一篇博文:https://www.jb51.net/article/102902.htm,里面有常用保留字的详细解析,不过没有实例,正好可以这个Dockerfile文件进行对照理解
这个Dockerfile文件的内容大概是:
第一行:当前要创建的镜像是基于java:8这个镜像的,也就是JDK8,也就是基本的Java运行开发环境肯定要有,这个也可以提前docker pull
第二行:在构建的时候把target目录下的jar包添加到镜像中,并改名为app.jar
第三行:镜像对外开放的端口是8888,这个在后面进行端口映射的时候还要用,一定要记住,当然,没记住,也可以使用docker history命令去看
第四行:启动镜像实例容器时会自动执行:java -jar /app.jar命令,也就是启动容器时,就启动了项目,而且不会被启动容器时添加的命令参数覆盖
另外其他没指定的参数,就是默认的,比如登录容器时默认的路径是根目录
5、打包项目,同时会自动构建镜像,点击右侧的Maven Projects,然后双击package
看到如果的信息就表示构建成功了,现在就可以去服务器查看构建的镜像了
第三步:启动镜像实例容器,远程访问项目,接下来的步骤可以在IDEA中直接进行,也可以在服务器上进行,为了更加熟悉docker命令,我就在服务器端演示了
关于以下用到的docker命令可以查看我的其他两篇博文:https://www.jb51.net/article/113227.htm https://www.jb51.net/article/142481.htm,里面有详细的docker镜像命令和容器命令的解释
1、查看所有镜像:docker images
如图所示,刚刚构建的镜像wbb/shop镜像已经存在了
2、启动容器:docker run -it -p 8889:8888 --name shop wbb/shop
启动时,这里的 -p 8889:8888 是端口映射,就是宿主机的8889端口映射到镜像的8888端口,访问宿主机的8889端口就相当于访问到镜像的8888端口,这个8888就是Dockerfile文件中写的开放的那个端口,当然,一般应该是指定-d后台运行,我指定前台交互运行,其实,就是为了看画的这个美女而已,这个身材,梦中女神啊
3、查看容器运行状态信息:docker ps
可以看到,构建的镜像实例已经运行了7分钟多了,端口映射情况,第一个是容器的ID
4、远程访问项目:http://服务器IP地址:8889/shop
在此之前,必须确保宿主机的端口8889是开放的,否则可以按照配置安全组规则放行8889端口,另外,/shop是我的项目的虚拟路径
OK,到此,使用IDEA连接远程Docker服务部署Spring Boot项目的方法就解释完了,不足之处,请多指教
看完这篇关于详解IDEA连接远程服务器Docker部署Spring Boot项目的文章,如果觉得文章内容写得不错的话,可以把它分享出去给更多人看到。
新闻标题:详解IDEA连接远程服务器Docker部署SpringBoot项目
文章来源:http://azwzsj.com/article/pgsdco.html