『高级篇』docker之DockerSwarm调整微服务及服务配置(29)
admin
2023-04-08 07:43:04
0次

原创文章,欢迎转载。转载请注明:转载自IT人故事会,谢谢!
原文链接地址:『高级篇』docker之DockerSwarm调整微服务及服务配置(29)

上次已经搭建好了swarm的集群环境,server01,server02,server03三台虚拟机,每一台的manager节点也是work节点,首先我们考虑的问题是服务的发现,从微服务的角度考虑,我们有得服务是为了其他服务使用的,如message service,user service,对于swarm上,有的需要暴露端口给其他服务使用,有的是直接通过服务的名称就可以访问的,改造模式,改造代码,然后上传到镜像仓库。最后配置一个docker stack 把他们的关系编写出来,一条命令搞定了。源码:https://github.com/limingios/msA-docker swarm分支

修改微服务的配置

  • course-dubbo-service

sh


#!/usr/bin/env bash

source ~/.bash_profile
mvn package
docker build -f ./Dockerfile-hub -t zhugeaming/course-dubbo-service:latest .
docker push zhugeaming/course-dubbo-service:latest


>Dockerfile
``` bash
FROM java:openjdk-8
MAINTAINER liming www.idig8.com

COPY target/course-dubbo-service-1.0-SNAPSHOT.jar /course-dubbo-service.jar

ENTRYPOINT ["java","-jar","/course-dubbo-service.jar"]
  • course-edge-service

sh


#!/usr/bin/env bash

source ~/.bash_profile
mvn package
docker build -f ./Dockerfile-hub -t zhugeaming/course-edge-service:latest .
docker push zhugeaming/course-edge-service:latest


>Dockerfile
``` bash
FROM java:openjdk-8
MAINTAINER liming www.idig8.com

COPY target/course-edge-service-1.0-SNAPSHOT.jar /course-edge-service.jar

ENTRYPOINT ["java","-jar","/course-edge-service.jar"]
  • gataway-zuul

    sh

    
    #!/usr/bin/env bash

source ~/.bash_profile
mvn package
docker build -f ./Dockerfile-hub -t zhugeaming/gataway-zuul:latest .
docker push zhugeaming/gataway-zuul:latest


>Dockfile
``` bash
FROM java:openjdk-8
MAINTAINER liming www.idig8.com

COPY target/gataway-zuul-1.0-SNAPSHOT.jar /gataway-zuul.jar

ENTRYPOINT ["java","-jar","/gataway-zuul.jar"]
  • user-edge-service

    sh

    #!/usr/bin/env bash
    source ~/.bash_profile
    mvn package
    docker build -f ./Dockerfile-hub -t zhugeaming/user-edge-service:latest .
    docker push zhugeaming/user-edge-service:latest

Dockerfile

#!/usr/bin/env bash
source ~/.bash_profile
mvn package
docker build -f ./Dockerfile-hub -t zhugeaming/user-edge-service:latest .
docker push zhugeaming/user-edge-service:latest
  • user-thrift-service

    sh

    #!/usr/bin/env bash
    source ~/.bash_profile
    mvn package
    docker build -f ./Dockerfile-hub -t zhugeaming/user-thrift-service:latest .
    docker push zhugeaming/user-thrift-service:latest

    Dockerfile

    
    FROM java:openjdk-8
    MAINTAINER liming www.idig8.com

COPY target/user-thrift-service-1.0-SNAPSHOT.jar /user-thrift-service.jar

ENTRYPOINT ["java","-jar","/user-thrift-service.jar"]


* 编写yml文件 使用docker stack 进行批量生成

``` yml
version: "3.4"
services:
  message-thrift-python-service:
    image: zhugeaming/message-thrift-python-service:latest
    deploy:
      endpoint_mode: dnsrr
      resources:
        limits:
          cpus: "0.2"
          memory: "128M"

  user-thrift-service:
    image: zhugeaming/user-thrift-service:latest
    deploy:
      endpoint_mode: dnsrr
      resources:
        limits:
          cpus: "0.2"
          memory: "512M"

  user-edge-service:
    image: zhugeaming/user-edge-service:latest
    deploy:
      endpoint_mode: vip
      resources:
        limits:
          cpus: "0.2"
          memory: "512M"
    ports:
    - "8082:8082"
    depends_on:
    - user-thrift-service
    - message-thrift-python-service

  course-dubbo-service:
    image: zhugeaming/user-edge-service:latest
    deploy:
      endpoint_mode: dnsrr
      resources:
        limits:
          cpus: "0.2"
          memory: "512M"
    depends_on:
    - user-thrift-service

  course-edge-service:
    image: zhugeaming/course-edge-service:latest
    deploy:
      endpoint_mode: vip
      resources:
        limits:
          cpus: "0.2"
          memory: "512M"
    ports:
    - "8081:8081"
    depends_on:
    - user-edge-service
  gateway-zuul:
    image: zhugeaming/gataway-zuul:latest
    deploy:
      endpoint_mode: vip
      resources:
        limits:
          cpus: "0.2"
          memory: "512M"
    ports:
    - "8080:8080"
    depends_on:
    - user-edge-service
    - course-edge-service

networks:
  default:
    external:
      name: idig8-overlay

『高级篇』docker之DockerSwarm调整微服务及服务配置(29)

docker stack 创建,因为机器内存太小,我还是使用的外网,下载镜像有点慢。

docker stack deploy -c ms-service.yml ms
docker stack services ms 

『高级篇』docker之DockerSwarm调整微服务及服务配置(29)

『高级篇』docker之DockerSwarm调整微服务及服务配置(29)

PS:创建成功,下一步就是调试微服务。

『高级篇』docker之DockerSwarm调整微服务及服务配置(29)

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...