十四、Docker 微服务实战

1、创建SpringBoot项目 hello_docker

1.1、项目结构

十四、Docker 微服务实战

1.2、项目所有代码

  • pom.xml

    4.0.0

    com.liuchao
    hello_docker
    1.0-SNAPSHOT

    hello_docker

        org.springframework.boot
        spring-boot-starter-parent
        2.7.0

        UTF-8
        1.8
        1.8
        2021.1

                com.alibaba.cloud
                spring-cloud-alibaba-dependencies
                ${spring-cloud-alibaba.version}
                pom
                import

            org.springframework.boot
            spring-boot-starter

            org.springframework.boot
            spring-boot-starter-web

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

                org.apache.maven.plugins
                maven-deploy-plugin

                    true

  • application.yml
## 激活对应的profile
spring:
  profiles:
    active: local
  application:
    name: hello_docker
  • TestController
package com.liuchao.liuchao.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @author liuchao
 * @date 2022/12/13
 */
@RestController
@RequestMapping("/test")
public class TestController {

    @RequestMapping("/test01")
    public String test01() {
        return "01";
    }
}
  • DockerApplication
package com.liuchao.liuchao;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

/**
 * @author liuchao
 * @date 2022/12/13
 */
@SpringBootApplication
public class DockerApplication {
    public static void main(String[] args) {
        SpringApplication.run(DockerApplication.class, args);
    }
}

2、编写Dockerfile文件

Dockerfile中几个点

  • 自动安装jdk1.8
  • 将hello_word项目生成的jar上传至容器
  • 启动hello_word.jar
  • 暴露端口 我这块用的端口是6001,即暴露6001端口

Dockerfile内容

基础镜像使用java
FROM java:8

作者
MAINTAINER liuchao

VOLUME 指定临时文件目录为/tmp,在主机/var/lib/docker目录下创建了一个临时文件并链接到容器的/tmp
VOLUME /tmp

将jar包添加到容器中并更名为hello_docker.jar
ADD hello_docker-1.0-SNAPSHOT.jar hello_docker.jar
运行jar包
RUN bash -c 'touch /hello_docker.jar'
ENTRYPOINT ["java","-jar","/hello_docker.jar"]

#暴露6001端口作为微服务
EXPOSE 6001

3、构建镜像

十四、Docker 微服务实战

十四、Docker 微服务实战

4、创建并运行容器

命令:docker run -d -p 6001:6001 hello_docker:1.0

十四、Docker 微服务实战

5、访问测试

十四、Docker 微服务实战

至此Docker 打包SpringBoot项目为镜像,创建并运行容器成功

Original: https://blog.csdn.net/u011837804/article/details/128331817
Author: 指尖@旋律
Title: 十四、Docker 微服务实战

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/804203/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球