• eureka的docker镜像部署


    项目结构

     1.pom.xml文件

    1. "1.0" encoding="UTF-8"?>
    2. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    3. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    4. <modelVersion>4.0.0modelVersion>
    5. <parent>
    6. <groupId>org.springframework.bootgroupId>
    7. <artifactId>spring-boot-starter-parentartifactId>
    8. <version>2.3.12.RELEASEversion>
    9. <relativePath/>
    10. parent>
    11. <groupId>com.itgroupId>
    12. <artifactId>eureka-serverartifactId>
    13. <version>0.0.1-SNAPSHOTversion>
    14. <properties>
    15. <java.version>1.8java.version>
    16. <spring-cloud.version>Hoxton.SR12spring-cloud.version>
    17. properties>
    18. <dependencies>
    19. <dependency>
    20. <groupId>org.springframework.cloudgroupId>
    21. <artifactId>spring-cloud-starter-netflix-eureka-serverartifactId>
    22. dependency>
    23. <dependency>
    24. <groupId>org.springframework.bootgroupId>
    25. <artifactId>spring-boot-starter-testartifactId>
    26. <scope>testscope>
    27. dependency>
    28. dependencies>
    29. <dependencyManagement>
    30. <dependencies>
    31. <dependency>
    32. <groupId>org.springframework.cloudgroupId>
    33. <artifactId>spring-cloud-dependenciesartifactId>
    34. <version>${spring-cloud.version}version>
    35. <type>pomtype>
    36. <scope>importscope>
    37. dependency>
    38. dependencies>
    39. dependencyManagement>
    40. <build>
    41. <plugins>
    42. <plugin>
    43. <groupId>org.springframework.bootgroupId>
    44. <artifactId>spring-boot-maven-pluginartifactId>
    45. plugin>
    46. plugins>
    47. build>
    48. project>

    2.EurekaServerApplication主函数类

    1. package com.it;
    2. import org.springframework.boot.SpringApplication;
    3. import org.springframework.boot.autoconfigure.SpringBootApplication;
    4. import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
    5. @SpringBootApplication
    6. @EnableEurekaServer //开启eureka注册中心的功能
    7. public class EurekaServerApplication {
    8. public static void main(String[] args) {
    9. SpringApplication.run(EurekaServerApplication.class, args);
    10. }
    11. }

    3.application.yml配置文件

    1. #单机
    2. server:
    3. port: 8761 #eureka��Ĭ�϶˿�
    4. spring:
    5. application:
    6. name: eureka-server #Ӧ������
    7. #eureka的配置分为3类,server client 实例的 eureka-server既是服务端又是客户端
    8. eureka:
    9. server:
    10. eviction-interval-timer-in-ms: 1000 #服务端间隔多少毫秒做定期删除的操作
    11. renewal-percent-threshold: 0.85 #续约百分比,超过85%的应用没有和你续约,那么eureka会保护服务,不会提出任何一个
    12. instance: #实例的配置
    13. instance-id: ${eureka.instance.hostname}:${spring.application.name}:${server.port} #主机名称:应用名称:端口号
    14. hostname: localhost #主机名称或则服务的ip
    15. prefer-ip-address: true #以ip的形式显示具体的服务信息
    16. lease-renewal-interval-in-seconds: 5 #服务实例的续约时间间隔
    17. client:
    18. registry-with-eureka: ${REGISTER_WITH_EUREKA:true} #先将server自己注册自己的开关关掉
    19. service-url:
    20. defaultZone: ${EUREKA_SERVER_URL:http://localhost:8761/eureka}
    21. fetch-registry: true
    22. #集群
    23. #server:
    24. # port: 8761
    25. #spring:
    26. # application:
    27. # name: eureka-server
    28. #eureka:
    29. # client:
    30. # service-url:
    31. # defaultZone: http://peer2:8762/eureka,http://peer3:8763/eureka
    32. # instance:
    33. # instance-id: ${eureka.instance.hostname}:${spring.application.name}:${server.port}
    34. # hostname: peer1
    35. # prefer-ip-address: true
    36. # lease-renewal-interval-in-seconds: 5
    37. #集群的终极方案
    38. #server:
    39. # port: 8761
    40. #spring:
    41. # application:
    42. # name: eureka-server
    43. #eureka:
    44. # client:
    45. # service-url:
    46. # defaultZone: http://peer1:8761/eureka,http://peer2:8762/eureka,http://peer3:8763/eureka
    47. # instance:
    48. # instance-id: ${spring.application.name}:${server.port}
    49. # prefer-ip-address: true
    50. # lease-renewal-interval-in-seconds: 5

    4.选择进行打jar包

    5.打开linux虚拟机,启动docker镜像,并创建目录为了方便编写自定义镜像

     6.创建docker目录,把jar包粘贴过来,并重命名(为了后面调用时方便)

    选择新建文件,编写DockerFile文件

    选择新建文件,编写run.sh脚本

    7.把项目中docker目录下的三个文件上传到linux虚拟机

    给run.sh脚本赋予权限

     执行脚本

    发现出现如下错误

    unable to prepare context: unable to evaluate symlinks in Dockerfile path: lstat /root/springcloud/eureka-server/Dockerfile: no such file or directory
    检查发现Dockerfile写成了DockerFile,导致运行出错

    解决办法:修改项目中的文件,并重新上传该文件到虚拟机

     现在,再次执行脚本,运行成功 

    查看docker镜像

    8.运行镜像

     docker run --name eureka-server -p 8761:8761  -e REGISTER_WITH_EUREKA=false -d eureka-server:1.0
    

    9.开启日志

     docker logs eureka-server
    

     

     10.通过浏览器访问

    本地主机ip+8761

    成功进入说明部署成功 

    补充:docker删除容器

  • 相关阅读:
    AVFrame相关api内存管理
    猿创征文|信息抽取(2)——pytorch实现Bert-BiLSTM-CRF、Bert-CRF模型进行实体抽取
    Centos8安装docker并配置Kali Linux图形化界面
    深入理解操作系统——cpu处理机调度详解
    Hadoop3教程(一):Hadoop的定义、组成及全生态概览
    银行 IT 服务连续性体系规划思想与灾备自动化切换建设经验
    OSN 1800 II 紧凑型 华为多业务光传输设备
    Oracle-12c新功能基于时间点recover table
    【历史上的今天】4 月 28 日:人工智能理论之父出生;大众点评上线;苹果开设 iTunes 音乐商店
    visionTransformer window平台下报错
  • 原文地址:https://blog.csdn.net/weixin_59334478/article/details/127801993