springboot整合docker部署

一、springboot 项目

1、新建一个springboot项目

2、对外提供一个访问接口

@RestController
public class TestController {
    @GetMapping("")
    public String test(){
        return "考试任务服务";
    }
}

3、在pom.xml中添加docker

 
        1.8
        
        springboot
    



 
            
                com.spotify
                docker-maven-plugin
                1.0.0
                
                    ${docker.image.prefix}/${project.artifactId}
                    src/main/docker
                    
                        
                            /
                            ${project.build.directory}
                            ${project.build.finalName}.jar
                        
                    
                
            

完整的 pom.xml



    4.0.0
    
        org.springframework.boot
        spring-boot-starter-parent
        2.6.2
         
    
    com.sinux
    examtaskservice
    0.0.1-SNAPSHOT
    jar
    examtaskservice
    Demo project for Spring Boot
    
        1.8
        
        springboot
    
    
        
            org.springframework.boot
            spring-boot-starter-web
        

        
            org.springframework.boot
            spring-boot-starter-tomcat
            provided
        
        
            org.springframework.boot
            spring-boot-starter-test
            test
        
        
            org.springframework.boot
            spring-boot-maven-plugin
            2.4.0
        
    

    
        
            
                org.springframework.boot
                spring-boot-maven-plugin
            





            
            
                com.spotify
                docker-maven-plugin
                1.0.0
                
                    ${docker.image.prefix}/${project.artifactId}
                    src/main/docker
                    
                        
                            /
                            ${project.build.directory}
                            ${project.build.finalName}.jar
                        
                    
                
            

        
    


4、和pom.xml同级下创建Dockerfile

springboot整合docker部署_第1张图片

Ddockerfile内容如下:

FROM java:8
VOLUME /tmp
ADD examtaskservice-0.0.1-SNAPSHOT.jar app.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

5、在application.yml 添加端口号

server:
  port: 8880

6、将项目跑起来  ,看能不能访问。

7、成功后将项目打包

springboot整合docker部署_第2张图片

 8、在target文件夹下将会生成jar包

springboot整合docker部署_第3张图片

二、Linux下操作  配置运行环境

eg :  maven 、 jdk 、docker

注意:Docker运行,要求操作系统为64位,内核版本为3.10及以上。 

查看命令:uname -r

1、使用xshell 新建会话 连接远程的服务器

2、安装jdk

a、在网上下载jdk8

        网站地址:Java Downloads | Oracle

下载的时候,他会要求你登陆。

springboot整合docker部署_第4张图片

 b.将下载好的jdk-8u321-linux-x64.tar.gz直接拖拽到 usr/java文件夹中。

    没有可以先创建 cd usr mkdir java

c.解压 jdk-8u321-linux-x64.tar.gz

        tar -xzvf jdk-8u321-linux-x64.tar.gz

d.配置Java 环境变量

进入到文件中   vim /etc/profile 

注: insert键是插入  esc :wq 保存并推出

内容:

JAVA_HOME=/usr/java/jdk1.8.0_321
CLASSPATH=$JAVA_HOME/lib/ 
PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH

source /etc/profile

e.查看版本  

java -version

springboot整合docker部署_第5张图片

3、安装maven 

     a.  wget下载。当然也可以向上面jdk的方式

wget https://mirrors.tuna.tsinghua.edu.cn/apache
/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz

mv apache-maven-3.5.4 /usr/local/maven3

  b.配置环境变量

MAVEN_HOME=/usr/local/maven3
export MAVEN_HOME
export PATH=${PATH}:${MAVEN_HOME}/bin

     c.刷新环境

source /etc/profile

d.查看版本 确保成功

mvn -version

4、安装 docker

apt-get install docker

docker version

三、部署

1、在usr/创建文件夹docker

cd usr

mkdir docker

2、将项目中的examtaskservice-0.0.1-SNAPSHOT.jar 和Dockerfile文件夹复制到docker文件夹中

docker run -d -p 8880:8880 docker

3、查看服务器ip地址

 springboot整合docker部署_第6张图片

4、在windows环境中通过 192.168.1.212:8880 访问接口

springboot整合docker部署_第7张图片

四、docker push 到指定仓库  hubor镜像仓库

五、Linux 常用命令

你可能感兴趣的:(spring,boot,docker,java)