1、创建一个简单的SpringBoot项目
1)、启动类
package com.shenmazong.docker;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
@SpringBootApplication(exclude={DataSourceAutoConfiguration.class})
public class ServerDockerDemoApplication {
public static void main(String[] args) {
SpringApplication.run(ServerDockerDemoApplication.class, args);
}
}
2)、接口控制类
package com.shenmazong.docker.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.HashMap;
import java.util.Map;
/**
* @author 军哥
* @version 1.0
* @description: IndexController
* @date 2022/9/12 20:58
*/
@RestController
@RequestMapping(value = "/index")
public class IndexController {
@GetMapping(value = "/userInfo")
public Map<String, Object> userInfo() {
Map<String, Object> map = new HashMap<>();
map.put("name", "军哥");
map.put("age", 27);
return map;
}
}
3)、配置类application.properties
# 应用名称
spring.application.name=server-docker-demo
# 应用服务 WEB 访问端口
server.port=8080
2、打包SpringBoot项目
mvn clean install -DskipTests

3、登录服务器并创建目录
1)、创建目录
mkdir -p /server/docker
2)、上传jar到服务器
上传jar到服务器的/server/docker目录下,如图:

3)、编写Dockerfile文件
在/server/docker目录下创建Dockerfile文件,内容如下:
#指定基础镜像,不需要另外安装jdk
FROM java:8
#维护者
MAINTAINER andy
#将本地文件添加到容器中,并更名为demo.jar
COPY server-docker-demo-0.0.1-SNAPSHOT.jar demo.jar
#指定访问端口,与yml文件中的端口一致
EXPOSE 8080
#容器启动时,运行该程序
ENTRYPOINT ["java", "-jar", "/demo.jar"]
4、制作docker镜像
1)、制作镜像
使用如下命令创建docker镜像
# demo为镜像的名字,注意不要少了后面的 .
docker build -t demo .

2)、查看镜像
docker images

5、运行容器
docker run -d -p 9013:8080 --name demo-test demo

6、测试容器
