『高階篇』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
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
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
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 進行批量生成
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 stack 建立,因為機器記憶體太小,我還是使用的外網,下載映象有點慢。
docker stack deploy -c ms-service.yml ms docker stack services ms
PS:建立成功,下一步就是除錯微服務。
ofollow,noindex" target="_blank" href="http://zhanzhang.baidu.com/sitesubmit/index?sitename=https://idig8.com/2018/11/04/gaojipiandockerzhidockerswarmdiaozhengweifuwujifuwupeizhi29/">百度未收錄
>>原創文章,歡迎轉載。轉載請註明:轉載自IT人故事會,謝謝!
>>原文連結地址:上一篇:下一篇: