使用Docker容器部署Spring Boot应用程序可以提高开发、部署和维护的效率。
同时提供了一种可伸缩、可移植和一致的解决方案,有助于降低成本并提供更好的用户体验。
以下提供使用Dockfile部署SpringBoot项目的解决方案。
1. 手工操作
(1). 先将SpringBoot项目打包成
jar
(2). 再利用shell工具手动将 jar 包上传到Linux
文件系统上,例如上传到 /var/jar/ 目录下
(3). 编写一个 Dockerfile 文件# 基于java镜像创建新镜像 FROM openjdk:8 # 作者 MAINTAINER author # 将jar包添加到容器中并更名为app.jar ADD /var/jar/springboot.jar /app.jar # 运行jar包 ENTRYPOINT ["java","-jar","/docker_test.jar"]
(4). 运行你的Dockerfile文件
docker build -t 镜像名称:版本 -f 文件名称 .
!!!!!! 注意末尾最后有一个
.
(5). 开放你需要的访问的端口,例如http://192.168.16.128:9090/docker
就要开放Linux的9090端口
firewall-cmd --add-port=9090/tcp --permanent firewall-cmd --reload firewall-cmd --list-ports
2.Idea插件~~Docker 高端选择
(1). 开放Linux的
2375端口
firewall-cmd --add-port=2375/tcp --permanent firewall-cmd --reload firewall-cmd --list-ports
(2). Idea安装
Docker插件
(3). Docker插件添加连接
(4). SpringBoot项目的pom文件
中需要有打包插件,才能执行打包操作<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build>
执行
Maven
的打包操作
(5). 创建Dockerfile文件
编写FROM anapsix/alpine-java MAINTAINER username EXPOSE 9090 ADD target/打包的jar包名称 /重命名后的jar包名称,例如docker_test.jar ENTRYPOINT ["java","-jar","/docker_test.jar"]
(6). 配置
第一步、
第二步、
如果点击 run ,则会运行,在远程宿主机上产生一个新的镜像,同时会按照设置产生并运行一个容器
jar包此时的位置在新创建容器docker_test的根目录下
(7) . 同样,如果想要在其他主机访问,打开Linux需要访问的端口firewall-cmd --add-port=9090/tcp --permanent firewall-cmd --reload firewall-cmd --list-ports
然后就可以远程访问了。
如果想要在Linux配置jdk
1、上传jdk压缩安装包到自定义文件夹 /usr/local/software/jdk
2、解压
tar -zxvf jdk-8u341-linux-x64.tar.gz
3、配置环境变量
编辑/etc/profile文件
vim /etc/profile
i 插入编辑,在末尾添加环境变量配置
ESC 退出插入编辑
:wq 退出并保存
JAVA_HOME=/usr/local/software/jdk/jdk1.8.0_341
CLASSPATH=.:$JAVA_HOME/lib
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
重新加载
source /etc/profile
最后 测试jdk
java -version