加入收藏 | 设为首页 | 会员中心 | 我要投稿 威海站长网 (https://www.0631zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 移动互联 > 应用 > 正文

一键部署应用到远程服务器,IDEA 官方 Docker 插件太顶了!

发布时间:2023-01-31 11:31:59 所属栏目:应用 来源:转载
导读: 一、 docker开启远程连接访问
首先我们要开启docker的远程连接访问。保证不是docker所在的服务器,也能够远程访问docker。
Linux版的docker:
1、修改 docker.service 文件,添加监听端口

一、 docker开启远程连接访问

首先我们要开启docker的远程连接访问。保证不是docker所在的服务器,也能够远程访问docker。

Linux版的docker:

1、修改 docker.service 文件,添加监听端口 -H tcp://0.0.0.0:2375

vi?/usr/lib/systemd/system/docker.service

找到 ExecStart,在最后面添加 -H tcp://0.0.0.0:2375,如下图所示

远程应用_远程应用接入平台_电视应用管家远程安装应用

2、重启docker

systemctl?daemon-reload
systemctl?start?docker

3、如果我们有防火前记得添加防火墙策略或者关闭防火墙。

window版docker

在电脑左下角找到docker图标,鼠标右键选择settings。将General菜单下的Expose daemon on tcp://localhost:2375 without TLS勾选。无需重启。

远程应用接入平台_电视应用管家远程安装应用_远程应用

安装配置idea的docker插件在File --> Settings --> Plugins 在输入框中搜索Docker,选择并安装。安装完成后重启Docker。

电视应用管家远程安装应用_远程应用_远程应用接入平台

4、配置docker

在File–> Settings–>Build,Execution,Deployment中找到Docker

新建一个docker实例,然后在Engine API URL中将docker所在ip端口号填上,填完如果下面显示Connection successful证明连接docker成功。如果失败远程应用,可能是我们上一步docker开启远程连接未成功。

我们设置完成后,回到idea主界面,可以看到页面下面有一个docker窗口。点击绿色箭头,连接docker。连接上后显示Containers和Images就是我们现在docker中已经有的容器和镜像。

远程应用_电视应用管家远程安装应用_远程应用接入平台

创建项目,并配置一 、 创建项目

我就以一个简单的Eureka项目演示。

另外,如果你近期准备面试跳槽,建议在Java面试库小程序在线刷题,涵盖 2000+道 Java 面试题,几乎覆盖了所有主流技术面试题。

File–> New -->Project --> Spring Initializr

远程应用_电视应用管家远程安装应用_远程应用接入平台

远程应用_电视应用管家远程安装应用_远程应用接入平台

远程应用_远程应用接入平台_电视应用管家远程安装应用

二、 配置项目

推荐一个开源免费的 Spring Boot 最全教程:

1. 修改pom.xml文件,引入docker-maven-plugin插件相关配置. 改配置在

标签



????com.spotify
????
docker-maven-plugin
????1.0.0

????
????
????????
????????????build-image
????????????
????????????package
????????????
????????????????build
????????????

????????

????


????
????????
????????${project.artifactId}
????????
????????
????????????latest
????????

????????
????????${project.basedir}/src/main/resources

????????
????????http://127.0.0.1:2375

????????
????????
????????????
????????????????/
????????????????
????????????????${project.build.directory}
????????????????
????????????????${project.build.finalName}.jar
????????????

????????

????


#项目启动的端口号和IP地址
server.port=9090
eureka.instance.hostname=127.0.0.1

#?是否将其注册到注册中心,?如果不是集群环境,false
eureka.client.register-with-eureka=false
#?是否检索服务,单机情况下为false
eureka.client.fetch-registry=false

eureka.client.service-url.defaultZone=http://${eureka.instance.hostname}:${server.port}/eureka/

② 找到项目启动类,添加@EnableEurekaServer注解

@EnableEurekaServer@SpringBootApplicationpublic?class?EurekaserverApplication?{

public?static?void?main(String[]?args)?{
????SpringApplication.run(EurekaserverApplication.class,?args);
}}

FROM?java:8
VOLUME?/tmp
ADD?*.jar?app.jar
EXPOSE?9090
ENTRYPOINT?[?"java",?"-Djava.security.egd=file:/dev/./urandom",?"-jar",?"/app.jar"?]

使用maven打包。我们在pom.xml中配置过,如果我们是用maven的package,那么就会自动使用Dockerfile文件进行构建。分享给你。

电视应用管家远程安装应用_远程应用接入平台_远程应用

创建容器,项目部署到docker

我们在docker窗口中,找到我们刚才创建的镜像文件,鼠标右键,选择Create container,我们修改创建容器所需要的配置。

远程应用接入平台_电视应用管家远程安装应用_远程应用

在Create Docker Configuration弹窗中修改Container name(容器名称) Bind ports(Ip和端口映射)

我在这里添加127.0.0.1:8080:9090. 使用本地8080端口,去访问容器的9090.

远程应用接入平台_电视应用管家远程安装应用_远程应用

我们点击Run之后,就会自动创建容器并启动。

我们可以看到在docker插件中,多出了一个eurekaServer的容器,并且启动成功,端口号为9090.

电视应用管家远程安装应用_远程应用_远程应用接入平台

访问容器中的项目

我们在前面设置的是使用8080端口,访问容器9090的项目。

我们使用127.0.0.1:8080访问项目,出现如下页面,证明项目启动成功。

电视应用管家远程安装应用_远程应用接入平台_远程应用

在这里我们基本上已经完成了所有的配置。另外,如果你近期准备面试跳槽,建议在Java面试库小程序在线刷题,涵盖 2000+道 Java 面试题,几乎覆盖了所有主流技术面试题。

修改项目,一键部署

以后,我们启动项目可以按照下图所示,一键启动我们项目就会在docker容器中运行。

远程应用接入平台_电视应用管家远程安装应用_远程应用

如果我们修改了项目,在使用在docker插件中启动项目,会发现在启动依然还是修改前的项目,因为我们只是启动了容器,并没有将修改后的项目重新打包并生成docker的images。如果我们想在启动时直接用运行打包并启动项目可以按照下面的操作。

我们修改在前面我们创建的Docker Images 的配置。

电视应用管家远程安装应用_远程应用_远程应用接入平台

2.在配置启动项中找到Before launch:Activate tool window,在这里我们新增一个Run Maven Gold。

电视应用管家远程安装应用_远程应用_远程应用接入平台

3.我们在这里的Command line 中添加一个命令 package。

电视应用管家远程安装应用_远程应用_远程应用接入平台

配置完成后保存。以后我们启动项目时都会执行maven的package命令,自动将我们打包并把项目生成docker镜像文件启动。

以后,如果我们修改项目后,都可以使用下图所示去启动。它会自动打包创建docker镜像并启动项目。

电视应用管家远程安装应用_远程应用接入平台_远程应用

如果我们只需要启动项目,到docker插件窗口,启动对应项目的容器就可以了。环境:jdk1.8及以上。、Maven 3.2+

参考:

原文:

End

电视应用管家远程安装应用_远程应用接入平台_远程应用

远程应用接入平台_远程应用_电视应用管家远程安装应用

Spring Cloud 微服务最新课程!

(编辑:威海站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章