Публикация события с хоста в dockerized сервис Dapr

У меня есть служба Dapr, которая прослушивает отправку сообщений через порт 3000с описанием docker-compose :

      version: '3'
services:
  truck:
    build: ./truck
    ports:
      - "50002:50002"
    depends_on:
      - redis
      - placement
    networks:
      - truck
  truck-dapr:
    image: "daprio/daprd:edge"
    command: ["./daprd","-app-id", "truck","-app-port",
        "3000","-placement-host-address","placement:50006",
        "-dapr-grpc-port","50002","-components-path", "/components"]
    volumes:
        - "./components/:/components"
    depends_on:
      - truck
    network_mode: "service:truck"
  placement:
    image: "daprio/dapr"
    command: ["./placement", "-port", "50006"]
    ports:
      - "50006:50006"
    networks:
      - truck
  redis:
    image: "redis:alpine"
    ports:
      - "6380:6379"
    networks:
      - truck
networks:
    truck:

И мой ./components/subscriptions.yaml:

      apiVersion: dapr.io/v1alpha1
kind: Subscription
metadata:
  name: add-toy-subscription
spec:
  topic: addToy
  route: /add_toy
  pubsubname: pubsub
scopes:
- truck

Я хочу проверить свой /add_toy подписка изнутри хоста с помощью:

  • Dapr CLI: dapr publish --publish-app-id truck --pubsub pubsub --topic addToy --data '{"status": "completed"}' - дает couldn't find a running Dapr instance ошибка
  • Баш : curl -X POST http://localhost:3500/v1.0/publish/pubsub/addToy -H "Content-Type: application/json" -d '{"status": "completed"}' - дает Connection refused ошибка (как от хоста, так и из контейнера)

Правильно ли я понимаю паб- подписку Dapr ? Как я могу вручную публиковать события на addToy тема?

0 ответов

Другие вопросы по тегам