在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
1.IDEA下载docker插件此处不再赘述,和其他插件一样安装 2.云服务器docker说明:本人服务器使用的是centOS 7 2.1 docker的安装https://www.ogeek.net/article/213611.htm 2.2 停止docker服务为了防止restart docker服务出现错误,保险起见,最好先停止docker服务,再修改配置文件。 停止docker之前要先停止正在运行的容器,否则后面启动容器也有可能出错。 停止运行容器:
然后停止docker服务
2.3 docker配置文件修改为了使用HTTP方式让IDEA连上服务器上的docker,需修改docker的配置文件,修改内容如下:
修改Execstart 这行内容,将其替换为以下内容,目的是开放2375端口,能进行HTTP远程连接:
2.4 刷新配置文件命令如下:
测试配置文件是否生效,在服务器端输入如下命令,如果出现JSON字符串内容,则文件生效 2.5 启动docker服务命令如下:
2.6 防火墙增加2375端口命令如下:
重启防火墙:
2.7 阿里云增加安全组规则这里要注意在实例的页面进入安全组,然后配置规则,开放2375端口 2.8 测试远程HTTP连接在本地浏览器输入 到此, 可以用IDEA进行集成dokcer了。 3. maven项目打包3.1 打包插件在pom文件中添加springboot打包插件 <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> 3.2 资源文件的打包及打包后的位置除了打包java源文件,还需要将资源文件打包,如xml/yml/properties/html等文件。但要注意html文件打包的位置,要放在META-INF/resources目录,否则启动jar包后,访问不到html页面。 <resources> <resource> <directory>src/main/java</directory> <!--这里我将mapper文件放在了java目录下 所以需要声明编译位置--> <includes> <include>**/*.xml</include> </includes> <filtering>true</filtering> </resource> <resource> <!--声明yml配置文件编译位置--> <directory>src/main/resources</directory> </resource> <resource> <!--声明html文件编译位置 并将编译后的文件放入指定位置--> <directory>src/main/webapp</directory> <targetPath>META-INF/resources</targetPath> </resource> </resources> 3.3 docker插件需要注意两个地方,一是docker镜像名字前面需要有一个前缀,其组成是[前缀]:[镜像名]:[版本号],二是指定镜像名时不得包含大写字母。 项目信息中name和version都要用到 <groupId>org.team</groupId> <artifactId>coolmeeting</artifactId> <version>1.0-SNAPSHOT</version> <name>coolmeeting</name> <description>docker start meetingMS</description> <properties> <java.version>1.8</java.version> <docker.image.prefix>team</docker.image.prefix> </properties> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <!-- tag::plugin[] --> <plugin> <groupId>com.spotify</groupId> <artifactId>docker-maven-plugin</artifactId> <version>1.0.0</version> <configuration> <dockerHost>http://127.0.0.1:2375</dockerHost> <!--镜像名字 不能含有大写字母--> <imageName>${docker.image.prefix}/${project.artifactId}</imageName> <!--dockerfile所在位置--> <dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory> <resources> <resource> <targetPath>/</targetPath> <!--target所在位置--> <directory>${project.build.directory}</directory> <!--将jar包和Dockerfile放在统一目录--> <include>${project.build.finalName}.jar</include> </resource> </resources> </configuration> </plugin> <!-- end::plugin[] --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <skipTests>true</skipTests> </configuration> </plugin> </plugins> Dockerfile文件如下,注意创建该文件时D要大写 , /meetingMS.jar是别名,方便书写 FROM java:8 VOLUME /tmp ADD coolmeeting-1.0-SNAPSHOT.jar /meetingMS.jar ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/meetingMS.jar"] 3.4 clean、install和docker build先用maven进行clean和install,然后用maven插件docker进行build 打包后的文件目录: 启动容器 设置启动参数 4.遇到的坑
5.参考springboot打成jar包无法访问jsp或者html,404错误 到此这篇关于IDEA集成docker部署springboot项目的文章就介绍到这了,更多相关IDEA集成docker部署springboot项目内容请搜索极客世界以前的文章或继续浏览下面的相关文章希望大家以后多多支持极客世界! |
请发表评论