ken2merのブログ

Webエンジニア, Ruby on Rails, Go

Daprをローカルマシンにインストールして試した

getting-started

https://docs.dapr.io/getting-started/

ここからバイナリをダウンロード可能。 https://github.com/dapr/cli/releases

Linux/MacOS の場合は /usr/local/bin などに配置して実行可能にしておけばOK。

dapr init を実行してから docker ps を実行してみて以下のような出力を確認する。

CONTAINER ID   IMAGE                    COMMAND                  CREATED         STATUS         PORTS                              NAMES
0dda6684dc2e   openzipkin/zipkin        "/busybox/sh run.sh"     2 minutes ago   Up 2 minutes   9410/tcp, 0.0.0.0:9411->9411/tcp   dapr_zipkin
9bf6ef339f50   redis                    "docker-entrypoint.s…"   2 minutes ago   Up 2 minutes   0.0.0.0:6379->6379/tcp             dapr_redis
8d993e514150   daprio/dapr              "./placement"            2 minutes ago   Up 2 minutes   0.0.0.0:6050->50005/tcp            dapr_placement

hello-world

https://github.com/dapr/quickstarts/blob/v1.0.0/hello-world/README.md

# clone the repo, then navigate to the Hello World quickstart
git clone https://github.com/dapr/quickstarts && cd quickstarts/hello-world

# Install dependencies
npm install

# Run Node.js app with Dapr
dapr run --app-id nodeapp --app-port 3000 --dapr-http-port 3500 node app.js

以下のコマンドでPOSTリクエストの送信が試せる。

dapr invoke --app-id nodeapp --method neworder --data '{"data": { "orderId": "42" } }'

また、上記と同様のリクエストを curl で行う場合は以下のようになる。

curl -XPOST -d @sample.json -H "Content-Type:application/json" http://localhost:3500/v1.0/invoke/nodeapp/method/neworder

curl で行う場合と比べ、かなりシンプルで直感的なコマンド記述が可能なことが分かった。