• 单机利用 docker镜像部署 spring cloud 项目(学习)


    首先 自己做一个jdk镜像,也可以直接拉取我的镜像,600M左右:

    sudo docker pull registry.cn-beijing.aliyuncs.com/zhanglf/jdk1.8-centos7:1.0

    搭建EurekaServer项目

    1、新建DockerFile文件

    FROM registry.cn-beijing.aliyuncs.com/zhanglf/jdk1.8-centos7:1.0
    COPY eureka-server.jar /data/web/
    WORKDIR /data/web
    CMD java -jar /data/web/eureka-server.jar

    2、新建Spring Eureka项目,打成jar包(eureka-server.jar),然后执行 docker build 命令

    docker build -t eurekaserver .  

    3、提前修改挂载的配置文件,~/config/eureka1/application.yml  。修改这个文件,下面创建好容器以后,内部配置文件会直接使用此文件,也可以稍后修改,重启容器生效

    # 服务注册中心
    server:
      port: 8001
    spring:
      application:
        name: eureka-server
    eureka:
      instance:
        hostname: eureka1
      client:
        fetch-registry: true # 表示是否从Eureka Server获取注册信息,默认为true.因为这是一个单点的Eureka Server,不需要同步其他的Eureka Server节点的数据,这里设置为false
        register-with-eureka: true # 表示是否将自己注册到Eureka Server,默认为true.由于当前应用就是Eureka Server,故而设置为false.
        service-url:
          # 设置与Eureka Server的地址,查询服务和注册服务都需要依赖这个地址.默认是http://localhost:8761/eureka/;多个地址可使用','风格.
          defaultZone: http://eureka2:8002/eureka/,http://eureka3:8003/eureka/

    4、然后再执行下面docker 命令创建实例

    docker run -itd -p 8001:8001 -v /home/config/eureka1/application.yml:/data/web/config/application.yml --name='eureka1' --add-host eureka1:10.255.20.39 --add-host eureka2:10.255.20.39 --add-host eureka3:10.255.20.39 eurekaserver
    docker run -itd -p 8002:8002 -v /home/config/eureka2/application.yml:/data/web/config/application.yml --name='eureka2' --add-host eureka1:10.255.20.39 --add-host eureka2:10.255.20.39 --add-host eureka3:10.255.20.39 eurekaserver
    docker run -itd -p 8003:8003 -v /home/config/eureka3/application.yml:/data/web/config/application.yml --name='eureka3' --add-host eureka1:10.255.20.39 --add-host eureka2:10.255.20.39 --add-host eureka3:10.255.20.39 eurekaserver

    注意:配置文件应该放到执行 java -jar 命令的目录同级或者 /config 下面。

    比如你在 /data/web 目录执行java -jar , 则配置文件应该放在 /data/web下面 或者 /data/web/config 下面。 如果使用DockerFile 执行java 命令,则可以使用 

    WORKDIR /data/web  命令切换执行目录

    5、通过docker ps 命令查看容器是否正常, 如果正常的话,就可以使用 ip+端口 访问eureka服务的控制台了 ,例如我的: http://117.***.***.243:8001/  ,我起了3个实例互相注册,

    下面是8001实例Eureka1的 控制台页面,其他两个类似

    EurekaServer 集群搭建完成。

    搭建Eureka服务提供者

    主要步骤跟上面类似,首先写新建 spring cloud 项目, Spring Initializr ,Spring cloud Discovery,选择Eureka Discovery Client 。 

     新建controller写api,然后打包上传服务器。 利用docker file 生成镜像,然年 docker run 

    docker run -itd -p 8005:8005 -v /home/config/producer1/application.yml:/data/web/config/application.yml -v /home/logs/producer1/:/data/log/ --name='producer1' eurekaproducer

    未完待续。。。



  • 相关阅读:
    【Ruby on Rails 学习五】Ruby语言的方法
    【Ruby on Rails 学习六】Ruby 类 的入门
    【Ruby on Rails 学习三】Ruby 基本数据类型(类、类的实例、对象)
    【深度学习笔记】第 1 课:从机器学习到深度学习
    【Ruby on Rails学习二】在线学习资料的整理
    【Ruby on Rails 学习一】ubuntu14.04配置rvm与ruby
    THREE.JS + Blender(obj、mtl加载代码)
    全站查询和分页显示——在线留言板2
    增加留言版块——在线留言板1
    html加载速度技术点
  • 原文地址:https://www.cnblogs.com/zhanglifeng/p/13322827.html
Copyright © 2020-2023  润新知