通過eureka註冊中心的註冊的服務,可以通過DELETE來刪除指定的服務,發送地址爲:
http://${server}:${port}/eureka/apps/${serviceName}/${instanceId}
如果不是刪除服務而是變更服務狀態,則使用PUT請求來操作服務實例的status:
http://${server}:${port}/eureka/apps/${serviceName}/${instanceId}/status?value=${value}
其中${value}的取值爲:OUT_OF_SERVICE,DOWN,UP
一個不錯的參考啓動腳本爲:
#!/bin/bash
INSTANCE_ID=`sudo docker inspect --format '{{ .Config.Hostname }}' demo`
sudo docker stop demo
curl -X DELETE http://10.250.9.11:8761/eureka/apps/DEMO-SERVICE/${INSTANCE_ID}:demo:7777
sudo docker rm demo
sudo docker pull xyz.com/demo:latest
sudo docker run -d --net weave --name demo-v /etc/timezone:/etc/timezone:ro -p 7777:7777 -v /data/demo/logs:/logs -v /etc/localtime:/etc/localtime xyz.com/demo:latest
關於docker inspect --f 模板,可以參考
https://www.jianshu.com/p/65377285662e