1.创建springBoot项目工程:

package com.eangulee.demo.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class HelloController {
    @RequestMapping("/")
    @ResponseBody
    public String hello() {
        return "Hello, SpringBoot With Docker";
    }
}

2.使用maven进行编译打包:

mvn package

(1)使用Docker部署

编写Dockerfile文件:
Dockerfile文件的作用:Dockerfile是一个包含用于组合映像的命令的文本文档。可以使用在命令行中调用任何命令。 Docker通过读取Dockerfile中的指令自动生成映像。
Dockerfile的文件的基本结构:
基础镜像信息、维护者信息、镜像操作指令和容器启动时执行指令

Dockerfile的常用指令:
1、from 基础镜像,当前新镜像是哪个镜像
2、mantainer:镜像维护者的姓名和邮箱
3、RUN:容器构建时需要运行的shell命令
4、EXPOSE:当前容器对外暴露出的端口
5、WORKDIR:创建容器后,终端登录进来的工作目录
6、ENV:添加环境变量到容器
7、ADD:将宿主机目录下的文件拷贝进镜像且ADD命令会自动处理URL和解压tar压缩包
8、COPY:类似ADD,拷贝文件和目录到镜像中,但不解压。将从构建上下问目录中<源路径>的文件/目录复制到新的一层镜像内的<目标路径>位置---------(1)CORY src dest(2)COPY [“src”,“dest”]

手把手部署springBoot项目(附Docker以及jar包部署)_maven

2.编译生成系统镜像

将dockerfile文件和生成的jar包文件上传到服务器,同级目录下
使用命令行:

docker build  -f Dockerfile -t Springboot:v1.0 .

-f : 参数引用文件 -t 镜像名称 . 表示当前目录
3.查看系统的镜像名称

docker images

查看生成的镜像名称
镜像名称:Springboot
镜像版本号:v1.0

4.运行docker镜像

docker run -p 8080:8080 -d Springboot:v1.0 --restart=always

-p为 容器端口号与主机端口号之间进行相互映射

-d 表示后台运行

–restart 表示重启容器时自动重启

  1. 查看docker的运行
docker ps