码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • linux中使用docker部署微服务


    目录

    一、制作jar包(如果看一眼很简单,可以直接使用结尾的jar)

    1.首先创建一个微服务 demo2

     2.启动微服务(在DemoApplication上右键执行启动就行) 

    注意:其他操作导致的 可能遇到的报错

     3.修改端口

     4.新建业务类MyController

    5.重启并检查是否成功

    6.打jar包

    二、通过dockerfile发布微服务部署到docker容器

    1.编写Dockerfile (文件名不可更改 必须是D为大写)

    2.构建打包成镜像文件(切换到目录下执行)

    ​3.运行容器

     4.访问测试


    前言:精髓部分

    https://pan.baidu.com/s/1iUPKvr9Y2_vPd44RRzIf8Q  8eub

    一、制作jar包(如果看一眼很简单,可以直接使用结尾的jar)

    1.首先创建一个微服务 demo2

     2.启动微服务(在DemoApplication上右键执行启动就行) 

    注意:其他操作导致的 可能遇到的报错

    java: 无法访问org.springframework.boot.SpringApplication
      错误的类文件: /C:/Users/kk/.m2/repository/org/springframework/boot/spring-boot/3.0.4/spring-boot-3.0.4.jar!/org/springframework/boot/SpringApplication.class
        类文件具有错误的版本 61.0, 应为 52.0
        请删除该文件或确保该文件位于正确的类路径子目录中。

    sprinboot项目冷知识:

    springboot3.0系列只支持JDK17的版本(一般pom.xml里面的JDK版本也要改为17)

    spring2.0系列默认支持JDK8的版本(常用) 

    解决:

     3.修改端口

     4.新建业务类MyController

    1. package com.example.demo.comtroller;
    2. import org.springframework.beans.factory.annotation.Value;
    3. import org.springframework.web.bind.annotation.RequestMapping;
    4. import org.springframework.web.bind.annotation.RequestMethod;
    5. import org.springframework.web.bind.annotation.RestController;
    6. import java.util.UUID;
    7. /**
    8. * @ClassName MyController
    9. * @Description TODO
    10. * @Author wanghaha
    11. * @Date 2023/5/4
    12. **/
    13. @RestController
    14. public class MyController {
    15. @Value("${server.port}")
    16. private String port;
    17. @RequestMapping("/order/docker")
    18. public String helloDocker()
    19. {
    20. return "hello docker"+"\t"+port+"\t"+ UUID.randomUUID().toString();
    21. }
    22. @RequestMapping(value ="/order/index",method = RequestMethod.GET)
    23. public String index()
    24. {
    25. return "服务端口号: "+"\t"+port+"\t"+UUID.randomUUID().toString();
    26. }
    27. }

    5.重启并检查是否成功

    http://localhost:6001/order/index      http://localhost:6001/order/docker 

    6.打jar包

     

     链接: https://pan.baidu.com/s/16POEwpvTBd7ZVThVKv4dKA 提取码: gaz4

    (以上操作不想弄或者了如指掌的直接使用我打好的jar包吧)

    二、通过dockerfile发布微服务部署到docker容器

    1.编写Dockerfile (文件名不可更改 必须是D为大写)

    1. # 基础镜像使用java
    2. FROM java:8
    3. # 作者
    4. MAINTAINER zzyy
    5. # VOLUME 指定临时文件目录为/tmp,在主机/var/lib/docker目录下创建了一个临时文件并链接到容器的/tmp
    6. VOLUME /tmp
    7. # 将jar包添加到容器中并更名为zzyy_docker.jar
    8. ADD demo2-0.0.1-SNAPSHOT.jar zzyy_docker.jar
    9. # 运行jar包
    10. RUN bash -c 'touch /zzyy_docker.jar'
    11. ENTRYPOINT ["java","-jar","/zzyy_docker.jar"]
    12. #暴露6001端口作为微服务
    13. EXPOSE 6001

    将微服务jar包和Dockerfile文件上传到同一个目录下/mydocker


    2.构建打包成镜像文件(切换到目录下执行)

    docker build -t zzyy_docker:1.6 .


     

    3.运行容器

     docker run -d -p 6001:6001 zzyy_docker:1.6

     4.访问测试

    curl 127.0.0.1:6001/order/docker

    curl 127.0.0.1:6001/order/index

     然后就是放开服务器的端口,将本地ip改成服务器ip就行

  • 相关阅读:
    数据标准详细概述-2022
    【Linux】unzip 解决 replace __MACOSX/xxx? [y]es, [n]o, [A]ll, [N]one, [r]ename
    【Vue3】响应式原理
    (附源码)ssm码农论坛 毕业设计 231126
    【JULY-1】DAY 1 二分查找
    Execute Crond Service on openEuler
    python——第九天
    LLVM Data Layout
    长文本翻译-免费长文本翻译软件
    第4部分 RIP
  • 原文地址:https://blog.csdn.net/qq_40453972/article/details/130489823
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号